字符串操作
python学习日记-day17
字符串常用的有以下:
strip # 去除空格
center # 居中
count # 统计次数
find # 返回索引值
lower # 大写变小写,casefold在PyCharm里提示没有,但是人为手写上已不会报错。
upper # 小写变大写
join # 列表拼接成字符串
split # 分割
startwith # 判断是否已什么开头
endwith # 判断是否已什么结尾
replace # 替换
index # 返回索引值
s = 'Let\'s go' # 转义符
print(r"le\ts") # 原生字符串,\t有特殊意义,如过一定要打印出\t 可以在前面加r,表示里面所有的原生字符串都是不转义的
# 移除字符串头尾指定的字符(默认为空格)
name = " Alex Chen "
print(name.strip()) # 移除首尾的空格
name2 = "00000000 Alex......Chen 0000000000"
print(name2.strip("0")) # 移除首尾的0
# 分割
name3 = "alex Chen xie"
print(name3.split()) # 分割,把一个字符 按空格分割成列表
name4 = "alex;jim;john"
print(name4.split(";")) # 指定分隔符,按分号分
# 判断长度
print(len(name))
name5 = "zhangsan,lisi,wangwu"
# 索引
print(name5.index("z"))
# 切片
print(name5[0:8])
print(name5[9:13])
print(name5[-6:-1]) # 顾头不顾尾,最后一个字符不会出现
print(name5[-6:]) # 顾头不顾尾,冒号后不写则会出现
print(name5[0::2]) # 跳着切,2是步长
name = "alex"
print(name.capitalize()) # 首字母大写
name = "Alex Chen"
print(name.casefold()) # 大写变小写,使用场景,如用户输入时判断
print(name.lower()) # 大写变小写
print(name.center(20, "*")) # 打印20个字符,Alex Chen居中,以*进行填充
print(name.count("e")) # 统计字母e出现的次数
print(name.count("e", 3)) # 统计字母e出现的次数,从第三个字符开始统计
print(name.count("e", 3, 7)) # 统计字母e出现的次数,统计第三个到第七个字符之间的次数
print(name.endswith("li")) # 判断是否已li结尾,返回True或False,区分大小写
name = "Alex\tChen"
print(name.expandtabs(30)) # 字符串中如果有tab键,设置tab键的长度
print(name.find("e")) # 返回第1个e的索引,找不到返回-1
print(name.find("e", 3)) # 从第三个字符开始找,返回第1个e的索引,找不到返回-1
print(name2.index("is")) # 返回索引值,找不到报错
# 格式化输出
name = "My name is {0}, I'm {1} years old."
print(name.format("Alex", "23"))
name2 = "My name is {name}, I'm {age} years old."
print(name2.format(name="Alex", age="24"))
print(name2.format_map({"name": "Alex", "age": "25"})) # 直接传字典
print("repelace:" + name2.replace("name", "NAME")) # 替换,将所有name换位NAME
print("repelace:" + name2.replace("name", "NAME", 1)) # 替换,将name换位NAME,只替换1次
print(name2.isalnum()) # 取值范围:a-z A-Z 0-9 ,判断所有的字符是否是编码表里的字符
print("w334a".isalnum())
print("10".isdecimal()) # 判断是否是正整数
print("3456".isdigit())
print("一".isnumeric()) #判断是否是数字,包括1,2,3等,一,二,三等,壹,贰等
print("A".isnumeric()) # 判断是否都是数字,忘记它 不用
print("a".isalpha()) # 判断是否是字母
print("a".isidentifier()) # 判断是否是合法的变量名
print("A".islower()) # 是否都是小写
print("A".isupper()) # 是否都是大写
print("a".isprintable()) # 是否可打印,如图片已经硬编码不可打印
print("a".isspace()) # 是否是空格
print("a".istitle()) # 是否是英文标题,单词是首字母大写就是标题返回True,如Today Headline
print(','.join(["alex", "jim", "Jack"])) # 把列表拼接成字符串,以逗号隔开,分隔符可以为空
print(name2.ljust(50, "-")) # 左对齐,50个字符,不够用-填充
print(name2.rjust(50, "-")) # 右对齐
print(name2.lstrip("My")) # 移除My
print(name2.swapcase()) # 大小写互换
print(name.translate())
IN = "abcde"
OUT = "@%^$#"
tras_table = str.maketrans(IN, OUT)
print(name2.translate(tras_table))

共有 0 条评论