字符串【序列的一种,可迭代类型】
字符串的表示方法:
- 普通字符串
- 原始字符串
- 长字符串
1 普通字符串
用单引号( ‘ ’ )或双引号( ‘’ ‘’ )括起来的字符串
【注:字符串对象是只读的,不能去写,字符串里要变,一定是创建一个新的字符串对象】
但是,有个问题:有时候我们希望在字符串里面嵌入单引号和双引号?
答: 用转义字符
\t------ 水平制表符 【用的时候看看,大概为了元素之间的统一间隔】
\n------ 换行
\r------ 回车
‘’------ 双引号
'------ 单引号
\------ 反斜线【一般应该用在读取文件位置时】
a = 'I \n am best ok'# 换行
print(a)
a = 'I \" am best ok'# 双引号
print(a)
a = 'I \‘ am best ok'# 单引号
print(a)
a = 'I \\ am best ok'# 反斜线
print(a)
2.原始字符串
原始字符串中 \n 表示的是 字符 \ 和 n
a = 'I \n am best ok'# 换行
b = r'I \n am best ok'# 原始字符串
print(a)
print(b)
3.长字符串
‘’’ xxxxxxxxx
xxxxxxxxxxx’‘’ 或
‘’‘’‘‘xxxxxxxxxxxx
xxxxxxxxxxxxxx’’‘’‘’
字符串转换
1.将字符串转换为数字
用 int () 和 float()
a = int('100')# 转换为整型
b = float('90.0')# 转换为浮点数
c = int('AB',16)# 按照16进制转换AB
print(a)
print(b)
print(c)
2.将数字转换为字符串
用 str() 函数,可以将很多类型的数据转换为字符串。
a = str(123)
b = str(123.123)
c = str(True)
d = str([1,23,4])# 列表转换
print(a)
print(b)
print(c)
print(d)
print(type(d))
格式化字符串
使用字符串的 format() 方法,可实现字符串的拼接和格式化字符串。
想将表达式的计算结果插入字符串中,则需要用到占位符( { } )。
- 默认占位符
i = 2
a = 'i * i = {}'.format(i*i) # 默认占位符
print(a)
2. 参数序号占位符
i = 3
a = '{0} * {0} = {1}'.format(i, i*i)# 参数序号占位符
print(a)
3.参数名占位符
i = 4
a = '{A} * {B} = {C}'.format(A=i,B=i,C=i*i) # 参数名占位符
print(a)
## 格式化控制符
{1:d}—1表示参数序号,d表示格式控制符
【注意:参数序号与 :之间不能有空格】
格式控制符:
s—字符串
d—十进制整数
f、F—十进制浮点数
g、G—十进制整数或浮点数
e、E—科学计算法表示浮点数
o—八进制整数(小写o)
x、X—十六进制整数(x小写表示,X大写表示)
【用 + 进行格式化字符串时,注意有非字符串的数据类型时,需要先转为字符串,然后再用 + 】
python 3.7后还有一种格式化字符串方法:f 前缀
用 % 格式化字符串
用带有 % 占位符的字符串 与一个元组进行 % 运算 。将替换占位符的表达式放到元组中。
字符串操作
1.字符串查找
用 str. find() 查找子字符串,在索引 start 到 end 之间查找子字符串 sub ,如果找到,则返回最左端位置的索引;如果没有找到,返回 -1 。
2.字符串替换
str.replace(old,new,count)— new 子字符串替换 old 子字符串,count 参数指定了替换 old 子字符串的个数,若 count 省略,替换所有 old 子字符串。
3.字符串分割
str.split(sep,maxsplit) 使用 sep 子字符串分割字符串 str , maxspit 表示最大分割次数,若省略,则不限制分割次数。