一.字符串的操作
s = "This is a test,and include letter、numbers 1,2,3 and up-letter ABcDe aBCdE"
1、根据索引取值 —> s[]
letter = s[5]
print(letter) # i
2、对字符串进行切片 --> s[start_index:end_index:step]
sp = s[::]
print(sp) # This is a test,and include letter、numbers 1,2,3 and up-letter ABcDe aBCdE
sp1 = s[:5:]
print(sp1) # This
sp2 = s[10::]
print(sp2) # test,and include letter、numbers 1,2,3 and up-letter ABcDe aBCdE
sp3 = s[5:10:]
print(sp3) # is a
sp4 = s[5:15:2]
print(sp4) # i et
spre = s[-1:-10:-1]
print(spre) # EdCBa eDc
3、字符串的遍历
for i in s:
print(i,end=" ") # T h i s i s a t e s t , a n d i n c l u d e l e t t e r 、 n u m b e r s 1 , 2 , 3 a n d u p - l e t t e r A B c D e a B C d E
print()
4、字符串的长度 —> len()
s_lenth = len(s)
print(s_lenth) # 73
5、成员运算 —> in \ not in
print("h" in s) # True
6、字符串的删除 —> 直接清空字符串所在的空间,删除的是数据本身,不是绑定关系
# s1 = "haha 这是一个要被删除的字符串"
# del s1
# print(s1) # NameError: name 's1' is not defined
二.字符串的常用方法
字符串的重要方法
s_zh = "***This is a test,and include letter、numbers 1,2,3 and up-letter ABcDe aBCdE,并且包括了中文---**"
1、 去除空白及指定字符 —> strip() \ lstrip() \ rstrip()
s2 = s_zh.strip()
print(s2) # ***This is a test,and include letter、numbers 1,2,3 and up-letter ABcDe aBCdE,并且包括了中文---**
print(id(s2),id(s_zh)) # 2407212780880 2407212574624
print(s_zh.strip("*")) # This is a test,and include letter、numbers 1,2,3 and up-letter ABcDe aBCdE,并且包括了中文---
print(s_zh.lstrip("*")) # This is a test,and include letter、numbers 1,2,3 and up-letter ABcDe aBCdE,并且包括了中文---**
print(s_zh.rstrip("*")) # ***This is a test,and include letter、numbers 1,2,3 and up-letter ABcDe aBCdE,并且包括了中文---
2、 将字符串切分成列表 —> split() \ rsplit(“str”,“count”):对字符串进行切分,变为列表,默认以空白进行切分依据!
print(s_zh.split()) # ['***This', 'is', 'a', 'test,and', 'include', 'letter、numbers', '1,2,3', 'and', 'up-letter', 'ABcDe', 'aBCdE,并且包括了中文---**']
print(s_zh.rsplit()) # ['***This', 'is', 'a', 'test,and', 'include', 'letter、numbers', '1,2,3', 'and', 'up-letter', 'ABcDe', 'aBCdE,并且包括了中文---**']
print(s_zh.split(" ")) # ['***This', 'is', 'a', 'test,and', 'include', 'letter、numbers', '1,2,3', 'and', 'up-letter', 'ABcDe', 'aBCdE,并且包括了中文---**']
print(s_zh.split("a",1)) # ['***This is ', ' test,and include letter、numbers 1,2,3 and up-letter ABcDe aBCdE,并且包括了中文---**']
print(s_zh.rsplit("a",1)) # ['***This is a test,and include letter、numbers 1,2,3 and up-letter ABcDe ', 'BCdE,并且包括了中文---**']
3、将特定字符串替换成另一种字符串 —> replace(“old”,“new”,count)
print(s_zh.replace(" ","%")) # ***This%is%a%test,and%include%letter、numbers%1,2,3%and%up-letter%ABcDe%aBCdE,并且包括了中文---**
print(s_zh.replace(" ","%",2)) # ***This%is%a test,and include letter、numbers 1,2,3 and up-letter ABcDe aBCdE,并且包括了中文---**
4、将列表中每个值添加进字符串中 —> “str”.join(intrable) :以 . 为分界将 interable 中每个元素组合成字符串
ls = ["我","需要","将","这个","列表","添加","进","字符串中"]
print("".join(ls)) # 我需要将这个列表添加进字符串中
print(".".join(ls)) # 我.需要.将.这个.列表.添加.进.字符串中
5、统计字符串中特定字符出现的次数 —> count(str, start_index=None, end_index=None)
print(s_zh.count("i")) # 3
6、根据字符取索引 —> index(str[, start[, end]])
print(s_zh.index("i")) # 5 --> 从左到右第一个
7、 以特定字符开头及结尾 —> startwith(str[, start[, end]]) / endwith(str[, start[, end]])
print(s_zh.startswith("*")) # True
print(s_zh.endswith("-")) # False
8、判断字符串内部是否是自然数、纯字母、字符串或字母、汉字 —> isdigit() / isalpha() / isalnum()
# isdigit --> 判断是否为纯数字(自然数,不包括罗马数字、汉字等)
# isalpha --> 判断是否为纯字母或汉字
# isalnum --> 判断是否为字母或汉字或数字(所有类型的数字)
# isnumeric --> 判断是否为数字(所有类型的数字)
print("Ⅳ".isnumeric()) # True
print("Ⅳ".isdigit()) # False
print("Ⅳ".isalnum()) # True
print("a1".isalpha()) # False
9、字符串的大写小写 --> upper \ lower \ captialize \ title \
s_zh1 = "this is a test,and include letter、numbers 1,2,3 and up-letter abcde abcde"
print(s_zh1.upper()) # ***THIS IS A TEST,AND INCLUDE LETTER、NUMBERS 1,2,3 AND UP-LETTER ABCDE ABCDE,并且包括了中文---**
print(s_zh1.lower()) # ***this is a test,and include letter、numbers 1,2,3 and up-letter abcde abcde,并且包括了中文---**
print(s_zh1.capitalize()) # This is a test,and include letter、numbers 1,2,3 and up-letter abcde abcde
print(s_zh1.title()) # This Is A Test,And Include Letter、Numbers 1,2,3 And Up-Letter Abcde Abcde
三.列表操作及其常用方法
常用操作
ls = [1,2,3,"a",'b','c',"赵",'钱']
# 1、取值
print(ls[2]) # 3
# 2、切片
print(ls[::-1]) # ['钱', '赵', 'c', 'b', 'a', 3, 2, 1]
# 3、拼接
print(ls + ["1",2,3]) # [1, 2, 3, 'a', 'b', 'c', '赵', '钱', '1', 2, 3]
# 4、长度
print(len(ls)) # 8
# Python学习交流群:711312441
# 5、成员运算 in \ not in
# 6、遍历:使用for循环,循环遍历列表
列表的常用方法
"""
常用方法
"""
# 1、增
ls.append("append")
print(ls) # [1, 2, 3, 'a', 'b', 'c', '赵', '钱', 'append']
ls.insert(3,"insert")
print(ls) # [1, 2, 3, 'insert', 'a', 'b', 'c', '赵', '钱', 'append']
ls.extend([100,200,300])
print(ls) # [1, 2, 3, 'insert', 'a', 'b', 'c', '赵', '钱', 'append', 100, 200, 300]
# 2、删
ls.remove("append")
print(ls) # [1, 2, 3, 'insert', 'a', 'b', 'c', '赵', '钱', 100, 200, 300]
ls.pop(3) # --> 可以删除指定index的值,默认删除最后一个
print(ls) # [1, 2, 3, 'a', 'b', 'c', '赵', '钱', 100, 200, 300]
# ls.clear() # 将列表中值进行删除
# 3、改
ls[1] = 22
print(ls) # [1, 22, 3, 'a', 'b', 'c', '赵', '钱', 100, 200, 300]
# 4、查
print(ls.index("赵")) # 6
print(ls.count("a")) # 1 --> 查询指定字符串出现次数
# 5、其它方法
ls.reverse()
print(ls) # [300, 200, 100, '钱', '赵', 'c', 'b', 'a', 3, 22, 1]
ls1 = ['a','d','c','f','e','g']
ls1.sort(reverse=True)
print(ls1) # ['g', 'f', 'e', 'd', 'c', 'a'] --> 只能对同种类型的数据进行排序
# ls.copy() --> 浅拷贝,只是复制列表容器本身及内部的内存地址,不会复制列表中元素本身
其它内容:
数字的操作
数字类型直接的相互转化
a = 10
b = 3.74
c = True
print(int(a), int(b), int(c)) # 10 3 1
print(float(a), float(b), float(c)) # 10.0 3.74 1.0
print(bool(a), bool(b), bool(c)) # True True True