切片
- int转换成bool 零: False 非零: True
- "" 空字符串表示False, 非空字符串表示:True
- None为 False
- 通过索引获取到的内容. 还是一个字符串
- 切片可以对字符串进行截取
- 语法 s[起始位置: 结束位置:步长]
- 特点:顾头不顾尾
s = "早起的鸟儿有虫吃" print(s[0]) # 早 print(s[1]) # 起 print(s[-1]) # 吃 -1表示最后一个 print(s[-2]) # 虫 print(s[5:10]) # 有虫吃 print(s[5:]) # 有虫吃 默认到结尾 print(s[:10]) # 从头开始 print(s[:]) # 从头到尾都切出来 print(s[-2:]) # 虫吃 从-2 切到结尾 默认从左往右 print(s[1:5:2]) # 起鸟 从1开始, 到5结束, 每2个取1个 print(s[::3]) # 早鸟虫 print(s[6:2:-1]) # 虫有儿鸟 - 表示反着来. 每两个取1个 print(s[-1:-6:-2]) # 吃有鸟
字符串操作
s = "abc123" print(s.isdigit()) # 判断字符串是否由数字组成 print(s.isalpha()) # 是否由字母组成 print(s.isalnum()) # 是否由字母和数字组成
结果:
False False True
name = 'my name is zou zou' print(name.capitalize()) # 首字母大写 print(name.count('z')) # 统计z的个数 print(name.center(50, '-')) # 一共打印50个字符,不够了用-补上,把name的内容放中间 print(name.endswith('ou')) # 判断已什么结尾,正确返回 True,错误返回False print(name.find('i')) print(name[name.find('i'):]) print('123'.isdigit()) # 是整数返回True,要引号引起来 print('if'.isidentifier()) # 判断是不是一个合法的变量名
结果:
My name is zou zou 2 ----------------my name is zou zou---------------- True 8 is zou zou True True
join可以把列表变成字符串, 把字符串变成列表.split()
s = '我是' print(s.join("abc")) # 把字符串s插入到abc中
结果:
a我是b我是c
name = '我是' print(name.join(['11', '22', '33']))
结果:
11我是22我是33
name = 'my name is zou zou' print('='.join(['1', '2', '3'])) # 1=2=3 print(''.join(['1', '2', '3'])) # 123 print(name.ljust(50, "*")) # 长度为50,不够的在右边用*补 print(name.rjust(50, "*")) # 长度为50,不够的在左边用* 补 print('ZOU'.lower()) # 将大写变小写 print('zou'.upper()) # 将小写变大写 print(' \nAlex'.lstrip()) # 去掉左边的空格 print(' \nAlex\n'.rstrip()) # 去掉右边的空格 print('\nAlex\n'.strip()) # 去掉两边的空格 print('alex li'.replace('l', 'L', 1)) # 替换 print('alex Li'.rfind('L')) # 返回最右边l的下标
name = 'my name is zou zou' print('1+2+3+4'.split('+')) # 按任意字符将字符串转换成列表 print(name.title()) # 将每个单词的首字母大写
结果:
['1', '2', '3', '4'] My Name Is Zou Zou
name = 'my name is {name} and i am {age} old' print(name.format(name='Alex', age='33')) # 格式化 print(name.format_map({'name': 'zou zou', 'age': 23})) # 格式化接收的是字典
结果:
my name is Alex and i am 33 old my name is zou zou and i am 23 old