1、字符串
1.1 字符串的操作
# 1.字符串的拼接
strvar = "我爱" + "中国"
# 2.字符串的重复
strvar = "今天下午2点开会" * 3
# 3.字符串跨行拼接
stravr = "5月14日,宝马集团召开了100届股东大会,"\
"这是宝马股东大会历史上首次采用在线形式进行。"
# 4.字符串的索引
#正向索引 0 1 2 3
strvar = "我爱中国"
#逆向索引 -4-3-2-1
# 5.字符串的切片与截取
strnum = "0123456789"
res = strnum[开始值:结束值:步长] # 开始值默认为0,结束值默认取到最后
1.2 字符串的方法
str.split() # 切割成列表
# 参数是负值 ------> 全部切割
# str.split(" ",2) 从左到右,以空格切割2次
# str.rsplit(" ",2) 从右到左,以空格切割2次
str.join() # 拼接成字符串
# "-".join(list) 将list的每一个元素通过'-'拼接起来
str.strip() # 默认去空白
str.rstrip() # 去右边的
str.lstrip() # 去左边的
# str.strip("*") 去指定符号
str.replace() # 替换
str.center() # 居中
str.rjust() # 居右
str.ljust() # 居左
# str.center(100,"-")------>字符串 + 填充字符长度 = 100
str.capitalize() # 首字母大写
str.title() # 每个单词首字母大写
str.upper() # 所有字母变大写
str.lower() # 所有字母变小写
str.swapcase() # 大小写互换
str.count() # 元素出现次数
str.find() # 元素第一次出现的索引位置,没有找到返回 -1
str.index() # 元素第一次出现的索引位置,没有找到返回 报错
str.startswith() # 判断以什么开头
str.endswith() # 判断以什么结尾
str.isupper() # 判断大写
str.islower() # 判断小写
str.isdecimal() # 判断纯数字
1.3 字符串格式化 format
1.3.1 format 传参
# 1.顺序传参
"{}爱{}".format("python","bajie") # "python爱bajie"
# 2.索引传参
"{1}爱{0}".format("python","bajie") # "bajie爱python"
# 3.关键字传参
"{name}年龄{age}".format(name="bajie",age=18) # "bajie年龄18"
# 4.容器类型(list,tuple)传参
# 不能使用逆向索引
data = "{0[0]}默默学{1[0]},然后惊艳{2[0]}!".format(["bajie","wukong","tangseng"],["python","c++","java"],["所有人","一个人"])
print(data)
data = "{class1[0]}默默学{class2[0]},然后惊艳{class3[0]}!".format(class1 = ["bajie","wukong","tangseng"],class2 =["python","c++","java"],class3 = ["所有人","一个人"]) # ------> 推荐使用
print(data)
# 字典key不加引号
data = "{class1[n2]}默默学{class2[s3]},然后惊艳{class3[d2]}!".format(class1 = {"n1":"bajie","n2":"wukong","n3":"tangseng"},class2 ={"s1":"python","s2":"c++","s3":"java"},class3 = {"d1":"所有人","d2":"一个人"})
1.3.2 format 填充字符
# ^ 居中
# > 居右
# < 居左
# {:填充物 格式 数量} 字符串 + 填充字符长度 = 数量
strvar = "{:❤^10}爱{}".format("python","bajie") # "❤❤python❤❤爱bajie"
1.3.3 format 进制相关
# :d 强制整型(不是整型会报错)
strvar = "{:10d}".format(123456789) # 多了空格来补
# :f 浮点型(默认6位,四舍五入,自动强转整型)
strvar = "{:.3f}".format(1234.56789) # 1234.568
# :s 强制字符串(不是字符串会报错)
# :, 千位分隔符(3位一隔开)
strvar = "{:,}".format(123456789.1234) # 123,456,789.1234
2、list
2.1 列表的相关操作
# 1.列表的拼接
listvar = [1,2,3] + [4,5,6]
# 2.列表的重复
listvar = [7,8,9] * 3
# 3.列表的切片
# 语法 => 列表[::] 完整格式:[开始索引:结束索引:间隔值]
# (1)[开始索引:] 从开始索引截取到列表的最后
# (2)[:结束索引] 从开头截取到结束索引之前(结束索引-1)
# (3)[开始索引:结束索引] 从开始索引截取到结束索引之前(结束索引-1)
# (4)[开始索引:结束索引:间隔值] 从开始索引截取到结束索引之前按照指定的间隔截取列表元素值
# (5)[:]或[::] 截取所有列表
# 4.列表的获取
listvar = ["唐三藏","孙悟空","沙悟净","猪悟能","紫霞仙子","嫦娥妹妹"]
res = listvar[3] # 单值获取 ----> "猪悟能"
res = listvar[2:] # 多值获取
# 5.列表的修改(若有步长,切多少改多少,需对应)
listvar[2] = "沙和尚" # 单值修改
listvar[2:4] = "白骨精" # 多值修改
listvar[::2] = range(3) # 切多少改多少
# 6.列表的删除
del listvar[2] # 单值删除
del listvar[::2] # 多值删除