字符串是用双引号""或者单引号''括起来的一 个或多个字符。

字符串可以保存在变量中,也可以单独存在。

可以用type()函数测试一个字符串的类型

1、索引

字符串是一个字符序列:字符串最左端位置标记 为0,依次增加。字符串中的编号叫做“索引

  • Python中字符串索引从0开始,一个长度为L的 字符串最后一个字符的位置是L-1
  • Python同时允许使用负数从字符串右边末尾向 左边进行反向索引,最右侧索引值是-1

字符串

H

e

l

l

o

,

P

y

t

h

o

n

从左到右

0

1

2

3

4

5

6

7

8

9

10

11

(...)

从右到左

(...)

-12

-11

-10

-9

-8

-7

-6

-5

-4

-3

-2

-1

2、通过索引访问字符串

2.1 单个索引辅助访问字符串中的特定位置

格式为<string>[<索引>]

greet = "Hello,Python"
print(greet[2])
x=8
print(greet[x-2])

输出结果为:
l
P

2.2 可以通过两个索引值确定一个位置范围,返回这个范围的子串

格式: <string>[<start>:<end>]

start和end都是整数型数值,这个子序列从索引 start开始直到索引end结束,但不包括end位置。

greet = "Hello,Python"
print(greet[0:3])

输出结果为:
'Hel'

3、字符串类型转换

大多数数据类型都可以通过str()函数转换为字符串

print(str(123))

输出结果为:(从数字类型转换为字符串类型)
'123'

4、字符串操作

4.1 字符串之间可以通过+或*进行连接

  • 加法操作(+)将两个字符串连接成为一个新的字符串
  • 乘法操作(*)生成一个由其本身字符串重复连接而成的字符串
print("pine"+"apple")
print("pine" * 3)

输出结果为:
'pineapple'
'pinepinepine'

4.2 len()函数返回一个字符串的长度

print(len("pine"))
print(len("祖国,你好!"))

输出结果为:
4
6

4.3 循环遍历

可以通过forin组成的循环来遍历字符串中每个字符

格式如下:

for <var> in <string>:

    操作

4.4 转义符

用转义符可以在字符串中表达一些不可直接打印的信息

 4.4.1 语言转义符: \

输出带有引号的字符串,可以使用转义符

使用 \\ 输出带有转移符的字符串

print("\"大家好\"")
4.4.2 换行:\n

4.5 内置字符串处理函数

操作

含义

+

连接

*

重复

<string>[]

索引

<string>[:]

剪切

len(<string>)

长度

<string>.upper()

字符串中全部字母大写

<string>.lower()

字符串中全部字母小写

<string>.strip()

去两边空格及去指定字符

<string>.spolit()

按指定字符分割字符串为数组

<string>.join()

连接两个字符串序列

<string>.find()

搜索指定字符串

<string>.replace()

字符串替换

for <var> in <string>

字符串迭代

4.6  内置的字符串处理方法

方法

描述

str.lower()

返回字符串str的副本,全部字符小写

str.upper()

返回字符串str的副本,全部字符大写

str.islower()

当str所有字符都是小写时,返回True,否则False

str.isprintable()

当str所有字符都是可打印的,返回True,否则False

str.isnumeric()

当str所有字符都是字符时,返回True,否则False

str.isspace()

当str所有字符都是空格,返回True,否则False

str.endswith(suffix[,start[,end]])

str[start: end] 以suffix结尾返回True,否则返回False

str.startswith(suffix[,start[,end]])

str[start: end] 以suffix开始返回True,否则返回False

str.split(sep=None, maxsplit=-1)

返回一个列表,由str根据sep被分割的部分构成

str.count(sub[,start[,end]])

返回str[start: end]中sub子串出现的次数

str.replace(old, new[, count])

返回字符串str的副本,所有old子串被替换为new,如果 count给出,则前count次old出现被替换

str.center(width[, fillchar])

字符串居中函数

str.strip([chars])

返回字符串str的副本,在其左侧和右侧去掉chars中列出的 字符

str.zfill(width)

返回字符串str的副本,长度为width,不足部分在左侧添0

str.format()

返回字符串str的一种排版格式

str.join(iterable)

返回一个新字符串,由组合数据类型iterable 变量的每个元素组成,元素间用str分割

5、字符串类型的格式化

字符串format()方法的基本使用格式是: <模板字符串>.format(<逗号分隔的参数>)

python函数形参为字符串_字符串

  • format()方法中模板字符串的槽除了包括参数序号,还可以包括格式控制信 息。此时,槽的内部样式如下:{<参数序号>: <格式控制标记>}
  • 其中,格式控制标记用来控制参数显示时的格式 。格式控制标记包括:<填 充><对齐><宽度>,<.精度><类型>6个字段,这些字段都是可选的,可以组 合使用,这里按照使用方式逐一介绍。


<填充>

<对齐>

<宽度>


<.精度>

<类型>

引导符号

用于填充的单个字符

< 左对齐

> 右对齐

^ 居中对齐

槽的设定输出宽度

数字的千位分隔符

适用于整数和浮点数

浮点数小数部分的精度

字符串的最大输出长度

整数类型b,c,d,o,x,X

浮点数类型e,E,f,%