# 字符串的索引与切片 str = 'ABCDEFGHIJK' print(str[0]) # A print(str[3]) # D print(str[5]) # F print(str[7]) # H """ 何为切片? 切片就是通过索引(索引:索引/索引:步长)截取字符串的一段 切片的原则: 顾头不顾尾 """ str = 'ABCDEFGHIJK' print(str[0:3]) # A B C print(str[2:5]) # C D E print(str[0:]) # 包含A到字符串末尾 print(str[0:-1]) # 顾头不顾尾原则,反向-1位置的K会取不到 A print(str[0:5:2]) # 从0开始到5位置结束,步长为2 A C E print(str[5:0:-2]) # 反向加步长 F D B # 字符串常用方法 name = input('请输入用户名:') # 首字母大写 print(name.capitalize()) # 大小写翻转 print(name.swapcase()) # 每个单词的首字母大写 print(name.title()) # 居中并填充 print(name.center(20, '*')) # 字符串中元素出现的个数 print(name.count("s")) print(name.count('s', 3)) # 判断是否以...开头(Bool) print(name.startswith('j')) print(name.startswith('j', 1)) # 判断是否以...结尾(Bool) print(name.endswith('e')) print(name.endswith('e', 3)) # 寻找字符串中的元素是否存在 jesse print(name.find('s')) print(name.find('s', 3)) # 字符串转化为数组 print(name.split(',')) print(name.rsplit(',', 1)) # format的三种用法 print('{} {} {}'.format('jesse', 18, 'man')) print('{1} {0} {1}'.format('jesse', 18, 'man')) print('{name} {age} {sex}'.format(age=18, sex='man', name='jesse')) # 去除两端字符 print(name.rstrip('*')) print(name.lstrip('*')) print(name.strip('*')) # 字符串替换 print(name.replace('jesse', 'David', 1)) # is系列 print(name.isalnum()) # 字符串由数字或字母组成 print(name.isalpha()) # 字符串只由字母组成 print(name.isdigit()) # 字符串只由数字组成