# 字符串的相关操作
# (1)字符串的拼接 +
strvar = "今天是" + "星期一" strvar += ",今天非常开心"
# (2)字符串的重复 *
strvar = "重要的事情说三遍" * 3
# (3)字符串的跨行
strvar = "sdfsdfsdfsdfsdfsdfsdfsdfsdfsdfsdfsdfsdf" "多余的几行放在第二行进行显示"
# (4)字符串的索引
正向索引 0123 strvar = "1234" 逆向索引 -4-3-2-1
# (5)字符串的切片(切片 <=> 截取)
(1)[开始索引:] 从开始索引截取到字符串的最后
strvar = "黑夜给我了黑色的眼睛,但是我却用翻白眼" res = strvar[11:]
(2)[:结束索引] 从开头截取到结束索引之前(结束索引-1)
res = strvar[:10]
(3)[开始索引:结束索引] 从开始索引截取到结束索引之前(结束索引-1)
res = strvar[8:10]
(4)[开始索引:结束索引:间隔值] 从开始索引截取到结束索引之前按照指定的间隔截取字符
正序 res = strvar[::3] # 0 3 6 9 12 15 ....从开始截取到最后 倒序 res = strvar[::-1] # -1 -2 -3 -4 -5 -6 -7 ...
(5)[:]或[::] 截取所有字符串
res = strvar[:]
res = strvar[::]
# ### 字符串相关函数
# *capitalize 字符串首字母大写
res = strvar.capitalize()
# *title 每个单词的首字母大写
res = strvar.title()
# *upper 将所有字母变成大写
res = strvar.upper()
# *lower 将所有字母变成小写
res = strvar.lower()
# *swapcase 大小写互换
res = strvar.swapcase()
# *len 计算字符串的长度
res = len(strvar)
# *count 统计字符串中某个元素的数量
res = strvar.count("a")
# *find 查找某个字符串第一次出现的索引位置 (推荐)
"""字符串.find("字符",开始索引,结束索引) 如果找不到直接返回-1""" strvar = "oh Father this is my Favorate dog" res = strvar.find("F") res = strvar.find("F",4) res = strvar.find("Fav",5,10) # 结束索引本身取不到,取到之前的那个值
# *startswith 判断是否以某个字符或字符串为开头
"""字符串.startswith("字符",开始索引,结束索引) 如果存在返回True,否则返回False""" strvar = "oh Father this is my Favorate dog" res = strvar.startswith("oh") res = strvar.startswith("this",10) res = strvar.startswith("this",10,13) # 10 11 12
# *endswith 判断是否以某个字符或字符串结尾
res = strvar.endswith("dog") res = strvar.endswith("rate",-12) res = strvar.endswith("rate",-12,-4)
# *isupper 判断字符串是否都是大写字母
res = strvar.isupper()
# *islower 判断字符串是否都是小写字母
res = strvar.islower()
# *isdecimal 检测字符串是否以数字组成 必须是纯数字
strvar = "12354" strvar = "12354.8979112" #有小数点都不行 res = strvar.isdecimal()
#ljust 填充字符串,原字符居左 (默认填充空格)
res = strvar.ljust(10)
#rjust 填充字符串,原字符居右 (默认填充空格)
res = strvar.rjust(10,"&")
# *center 填充字符串,原字符居中 (默认填充空格)
res = strvar.center(10) # 原字符串长度 + 填充字符长度 = 10 ,默认填充空格 res = strvar.center(10,"#")
# *strip 默认去掉首尾两边的空白符
res = strvar.strip() res = strvar.strip("@") # 指定去掉的符号
#rstrip 去掉右边某个字符
print( strvar.rstrip("@") )
#lstrip 去掉左边某个字符
print( strvar.lstrip("@") )
# 重要!!!
# *split 按某字符将字符串分割成列表(默认字符是空格)
strvar = "you can you up no can no bb" lst = strvar.split() strvar = "you-can-you-up-no-can-no-bb" lst = strvar.split("-") # 从左到右分隔 lst = strvar.rsplit("-",2)# 从右到左分隔,(可以指定分隔的次数)
# *join 按某字符将列表拼接成字符串(容器类型都可)
lst = ['you', 'can', 'you', 'up', 'no', 'can', 'no', 'bb'] res = "-".join(lst)
# *replace 替换,把字符串的旧字符换成新字符
"""replace(要替换的字符,替换成什么,替换的次数)""" strvar = "可爱的小青蛙喜欢吃蚊子,有没有,有没有,还有没有" res = strvar.replace("有没有","真没有") res = strvar.replace("有没有","真没有",1)