Python第二周总结
补充上期str后缀小魔法:
.swapcase() 将字符串大小写互转,小变大,大变小
a = ("hello") v = a.swapcase() print(v)
.isnumeric() 判断是否为数字,支持汉字,范围广
a = "一②三4" v = a.isnumeric() print(v) #true
.isprinttable() 检测变量中是否有无法显示的字符,如\n\t存在则返回false
a = "hello \t" print(a) #false
.isspace() 判断是否全部为空格,\t\n也可以,是则返回true
a = " \t\n " a = a.isspace() print(a) #true
.istitle() 判断是否为标题,每个单词的首字母必须为大写,否则false
a = "hello world" a = a.istitle() print(a) #true
.title 将字符串的每个单词的首字母转换为大写
a = "hello world key" a = a.title() print(a) #hello world key
.join() 将一个变量内的字符加入到另一个变量的字符串中
a = " " b = "春眠不觉晓" v = a.join(b) print(v) #春 眠 不 觉 晓 v = "_".join(b) #春_眠_不_觉_晓
.ljust() 设置一个长度,并设置左对齐
a = "alom" v = a.ljust(20) print(v) #alom (有14个空格,为左对齐)
.rjust() 设置一个长度,并设置右对齐
a = "alom" v = a.ljust(20) print(v) # alom(有14个空格,为右对齐
.strip 处理字符串中左右两边的空格删除,可去除\t\n
a = " alom cty " v = a.strip() print(v) #alom cty #可去除左右两边的空格,但是不能去除中间的
str.maketrans(x,y) x,y必须处于对应关系,字符长度一样
.translate() 在字符串中寻找x,替换为y
a = "abahwrhfhnairnannszxc" c= str.maketrans("abc","哈哈哈") v = a.translate((c)) print(v) #哈哈哈hwrhfhn哈irn哈nnszx哈
.partition() 以第一个关键字为分割
a = "awdada" a = a.partition("a") print(a) #('', 'a', 'wdada')
.rpartition() 以最后一个关键字为分割
a = "acwutac" a = a.rpartition("a") print(a) #('acwut', 'a', 'c')
.split() 将关键词从字符串中移除并分割,如果指定个数,则就去除多少个关键字分割
a = "acjfafas" a = a.split("a") print(a) #['', 'cjf', 'f', 's'] #如果关键字为第一个则输出一个空引号
.splitlines() 通过换行符来分割,后面可加true和false是否保留换行
a = "wadawd\n" a = a.splitlines() print(a) #['wadawd', 'awdadawda', 'sf']
.replace() 将里面的第一个值替换为第二个值
a = "wadaaa" a = a.replace("a","s") print(a) #wsdsss
列表list,类
1.列表格式,列表可以嵌套任何类型,以中括号括起来[],分割每个元素,列表内可以放很多东西
2.可以索引取值,切片,可执行循环
字符串一旦创建则不可修改,而列表创建后可以修改
索引取值 可通过在列表内的位置来输出指定值
i = ["qwe","qwer",["wada","gaafa",["fgeaf"]]] v = i[2][2] print(v) #['fgeaf'] 输出的值
字符串转换列表 字符串转为列表时,每个字符为一个元素
i = "awd"
v = list(i)
print(v,type(v))
#['a', 'w', 'd'] <class 'list'>
列表转为字符串时,需要拼接时,如果不是同一种数据类型则要自己写for循环处理
li = ["wangchen",12,"year"] s = "" for i in li: s = s + str(i)#需要转换为str print(s) #wangchen12year
.append 将一个值添加到列表中
a = ["wda","aw"] a.append("ca") print(a) #['wda', 'aw', 'ca']
.clear() 将列表的值清空
a = ["afaa","fwarawaw"] a.clear() print(a) #[]
.copy 拷贝列表(浅拷贝)
a = ["hello","world"] v = a.copy() print(a,v) #['hello', 'world'] ['hello', 'world']
.extend() 扩展原列表,参数可迭代对象
a = ["hello","world"] a.extend(["key"]) print(a) #['hello', 'world', 'key'] #如果没有加[],则括号内的字符串每个元素都会被单一的加入到列表中 a.extend("key") print(a) #['hello', 'world', 'k',"e","y"]
index() 根据值获取当前索引位置
a = ["exa","aewtjoia","tawr"] v = a.index("tawr") print(v) #2 #如果列表中不存在,则报错
.insert() 指定位置,将元素添加进列表中(跟extend,append一定要分清楚)
a = ["exa","aewtjoia","tawr"] a.insert(0,"a") print(a) #['a', 'exa', 'aewtjoia', 'tawr'] #前面的参数为位置,后面的为需要加入的元素
.pop 指定某个值将他删除,可以将这个值放到一个容器(参数为要删除值的位置)
a = ["hello","world","end"] v = a.pop(0) print(a,v) #["world","end"]hello
.remove() 删除列表中的指定值,左边优先
a = ["pop","waw","pop"] a.remove("pop") print(a) #['waw', 'pop'] #删除的元素,从左边开始,如果后面出现多个,且只能删除一个
.reverse() 将列表中的位置进行反转
a = ["awd","gaaw","awdaw"] a.reverse() print(a) #['awdaw', 'gaaw', 'awd']
.sort() 将列表进行排序,默认为从小到大,当参数为reverse=true时则从大到小
a = [1,2,546,73,34,67] a.sort print(a) #[1, 2, 34, 67, 73, 546]
元组 tuple
在元组的最后推荐加入逗号,以便区分是否为参数
元组创建不可被修改,不能被增加或删除,可以索引取值,也可以切片
.count() 计算元组中关键字的个数
a= ("ewfwa","fwaf") v = a.count("fwaf") print(v) #1
.index() 方法雷同上述