1.获取字符
1.获取单个字符
字符串中的每一个字符都会对应一个唯一的下标(索引)用来表示字符在字符串中的位置。
下标是从0开始一次增加的, 0对应的是第一个字符(0 ~ 字符串长度-1)
可以是从-1开始依次减小,-1代表最后一个字符(-1 ~ -字符串长度)
'hello' -> h->(0,-5) e->(1,-4) l->(2,-3) l->(3,-2) o->(4,-1)
'\tpytho\u4e00n' -> p->(1, -7)
a.语法:
字符串[下标] - 获取字符串中指定下标对应的字符
b.说明:
字符串 - 只要结果是字符串的表达式都可以,例如:字符串字面量, 字符串变量
[] - 固定写法
下标 - 需要获取的字符对应的下标; 注意,这儿的下标不能越界
result = 'hide on bush'[3]
print =(result)
e
2.获取部分字符(字符串切片)
方法一:
a.语法:
字符串[开始下标:结束下标:步长] - 从开始下标开始,获取到结束下标前为止。每次下标值加上步长去获取下一个
b.说明:
字符串 - 只要结果是字符串的表达式都可以,例如:字符串字面量, 字符串变量
[] - 固定写法
开始下标、结束下标 - 下标值(这儿的下标可以越界)
步长 - 必须是整数(正数和负数都行); 如果步长是正数,是从开始下标开始从前往后获取;
如果步长是负数,是从开始下标开始从后往前获取;
c.注意:
当步长为正,要求开始下标对应的字符的位置必须在结束下标对应的字符的位置的前面,否则结果是空串!
当步长为负,要求开始下标对应的字符的位置必须在结束下标对应的字符的位置的后面,否则结果是空串!
str1 = 'hide on bush'
print(str1[0:-1:2])
hd nbs
方法二:
字符串[开始下标:结束下标] - 步长是1;从开始下标开始到结束下标前为止,一个一个的取!
str2 = 'hide on bush'
print(str2[3:6])
e o
方法三:
a.省略开始下标
字符串[:结束下标:步长] - 当步长是正数,从字符串的第一个字符开始取到结束下标前为止;
当步长是负数,从字符串的最后一个字符开始取到结束下标前为止.
b.省略结束下标
字符串[开始下标::步长] - 当步长是正数,从开始下标开始取到字符串最后一个字符为止;
当步长是负数,从开始下标开始取到字符串的第一个字符为止
str3 = 'hide on bush'
print(str3[:7:2])
hd n
print(str3[::-1]) # 让字符串倒序
hsub no edih
2.字符串支持的运算符
1.python中的字符串支持数学运算符中的+和*,以及所有的比较运算符
str1 = 'zzc'+'233' str2 = 'zzc'*3
print(str1) print(str2)
zzc233 zzczzczzc
2.比较是否相等
==, != 可以判断两个字符串是否相等或者不相等
3.字符比较大小:
从第一个字符开始依次往后找,找到第一个不相等的字符对,判断它们的编码值的大小,
谁的编码值大,对应的字符串就大;不会再往后比较了!
应用:
1.判断是否是小写字母: 'a'<=char<='z' <===> char>='a' and char<='z'
2.判断是否是大写字母: 'A'<=char<='Z'
3.判断是否是字母: 'a' <= char <= 'z' or 'A' <= char <= 'Z'
4.len函数
len(序列) - 获取序列长度, 获取序列中元素的个数
len(字符串) - 获取字符串的长度(字符的个数) -- 结果是一个整数
print(len('skt'))
3
3.格式字符串
1.什么是格式字符串:
在字符串中通过格式占位符来代替字符串中变化的部分,然后在后面通过数据或者变量确定变化
语法:
包含占位符的字符串 % (值1, 值2, 值3...)
说明:
占位符 - %s 字符串
%d 整数
%f 小数 (%.Nf 保留小数点后N位小数)
%c 字符 (可以将数字转换成字符)
% - 固定写法
() - 固定写法,字符串中只有一个占位符的时候,这个()可以省略
括号中的值 - 值和占位符要一一对应(个数、类型、位置都要对应)
4.类型转换
1.语法:
类型名(数据) - 将指定数据转换成指定类型
2.转换实例
int(数据) -> 将其他数据转换成整型
float(数据) -> 将其他数据转换成浮点型
bool(数据) -> 将其他类型转换成布尔
str(数据) -> 将其他数据转换成字符串
a.转换成整型:
a = int(-9.80) # 所有浮点数可以转换成整数,直接保留整数部分
b = int(False) # 所有布尔可以转化成整数, True -> 1; False -> 0
c = int('-100') # 只有去掉字符串的引号后本身就是一个整数的字符串才能转换成整型
2.转换成浮点型
a = float(100) # 所有整数都可以转换成浮点数,在后面加.0
b = float(True) # 所有布尔可以转化成浮点数, True -> 1.0; False -> 0.0
c = float('12.9') # 去掉引号后本身就是一个数字的字符串能转换成浮点型
3.转换成布尔类型
说明:
python中所有的数据都可以转换成布尔
所有为空为0的值都会转换成False,其他都是True
a = bool(0)
b = bool(-0.0)
c = bool('')
d = bool([])
e = bool({})
f = bool(None)
4.转换成字符串类型:
python中所有的数据都可以转换成字符串,而且转换的时候就是单纯的在最外面加引号
a = str(100)
print(a)
print('abc'+str(100))
网友评论