目录
字符串 str
内置函数:
# 定义字符串
str = "a,b,c,d,e,f,g,h,i,j,k,l,m,n'o,p,q'"
-----------
# len(str) #长度,计算包括标点符号
lens = len(str)
print(lens) #结果:34
-----------
# find(substr, start ,end) #查找字符串对应的索引,无返回-1
find1 = str.find("c",0,-1)
find2 = str.find("c",5,-1)
print(find1) #结果:4
print(find2) #结果:-1
-----------
# index( ) #查找某个元素并输出对应的索引值,若有多个则返回索引值最小的
index1 = str.index("a")
index2 = str.index(",")
index3 = str.index("123")
print(index1) # 结果:0
print(index2) # 结果:1
print(index3) # 结果:ValueError: substring not found
-----------
# count(substr ,start ,end) #计算字符串在序列中出现次数,没找到返回0
count1 = str.count(",",0,-1)
count2 = str.count("a",1,-1)
print(count1) # 结果:15
print(count2)# 结果:0
-----------
# replace(old ,new , max) #old替换成new,max表示替换不超过 max 次
replace1 = str.replace(",","..")
replace2 = str.replace(",","..",5)
print(replace1) # 结果:a..b..c..d..e..f..g..h..i..j..k..l..m..n'o..p..q'
print(replace2) # 结果:a..b..c..d..e..f,g,h,i,j,k,l,m,n'o,p,q
-----------
# split(sep,num) #以字符sep作为分隔符分割,num表示分割次数,默认为-1次,返回数组
split1 = str.split(",")
split2 = str.split(",",5)
print(split1) # 结果:['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', "n'o", 'p', "q'"]
print(split2) # 结果:['a', 'b', 'c', 'd', 'e', "f,g,h,i,j,k,l,m,n'o,p,q'"]
-----------
# strip()
# str.strip(chars): 删除字符串前后(左右两侧)的空格或特殊字符
# str.lstrip(chars):删除字符串前面(左边)的空格或特殊字符
# str.rstrip(chars):删除字符串后面(右边)的空格或特殊字符
strip1 = str.strip('a')
print(strip1) # 结果:,b,c,d,e,f,g,h,i,j,k,l,m,n'o,p,q'
-----------
# upper( ) #所有小写字符串改为大写
upper = str.upper()
print(upper) # 结果:A,B,C,D,E,F,G,H,I,J,K,L,M,N'O,P,Q'
-----------
# lower( ) #所有大写字符串改为小写
lower = str.lower()
print(lower)# 结果:a,b,c,d,e,f,g,h,i,j,k,l,m,n'o,p,q'
-----------
# join( )
l = ["1","2","3","4"]
t = ("+",'-','*','/','%')
join1 = "..".join(l)
join2 = "..".join(t)
join3 = "..".join(str)
join4 = str.join(l)
print(join1)# 结果:1..2..3..4
print(join2)# 结果:+..-..*../..%
print(join3)# 结果:a..,..b..,..c..,..d..,..e..,..f..,..g..,..h..,..i..,..j..,..k..,..l..,..m..,..n..'..o..,..p..,..q..'
print(join4)# 结果:1a,b,c,d,e,f,g,h,i,j,k,l,m,n'o,p,q'2a,b,c,d,e,f,g,h,i,j,k,l,m,n'o,p,q'3a,b,c,d,e,f,g,h,i,j,k,l,m,n'o,p,q'4
判断:
str.isalnum () #所有字符都是数字或者字母,为真返回 Ture,否则返回 False。
str.isalpha () #所有字符都是字母,为真返回 Ture,否则返回 False。
str.isdigit () #所有字符都是整数,为真返回 Ture,否则返回 False。
str.islower () #所有字符都是小写,为真返回 Ture,否则返回 False。
str.isupper () #所有字符都是大写,为真返回 Ture,否则返回 False。
str.istitle () #所有单词都是首字母大写,为真返回 Ture,否则返回 False。
str.isspace () #所有字符都是空白字符,为真返回 Ture,否则返回 False。
元组 tupel
特点:
- 有序
- 可重复
- 不可修改(可转化为列表修改后,再转化为元祖)
如果需要创建一个有且仅有一个元素的元组,需要在该元素之后加上逗号
列表 lsit
特点:
- 有序
- 可重复
- 可修改
分片、步长
-
分片
-
a[1: ] 表示该列表中的第1个元素到最后一个元素
-
a[ : n]表示从第0个元素到第n个元素(不包括n)
-
-
步长
-
a[start : end : step] 表示从第start个元素到第end个元素(不包括end),根据步数step跳格取值
-
方法
l = ['a','b','c','d','e']
append = l.append('aaa') #末尾添加元素
print(l)
l = ['a','b','c','d','e']
l.insert(1,'bbb')#指定索引添加元素,原索引元素往后移动(索引值+1)
print(l)
l = ['a','b','c','d','e']
l.pop() #默认删除最后一个元素
print(l)
l = ['a','b','a','c','d','e']
l.remove('a')#用于删除列表中匹配到的第一个元素
print(l)
l = ['a','b','c','d','e']
l.clear()#用于清空列表
print(l)
l = ['a','b','c','d','e']
del l#删除列表,删除后列表和列表中的元素都不存在
print(type(l))#结果: NameError: name 'l' is not defined
l = [6,9,8,5,1,4,7,5]
l.sort()#升序排序,括号默认是reverse = False
print(l)
l = [6,9,8,5,1,4,7,5]
l.sort( reverse = True)#降序排序
print(l)
l = [6,9,8,5,1,4,7,5]
l.reverse()#元素相反排序(元素不分大小从后往前排列)
print(l)
集合 set
特点:
- 无序
- 不可重复
- 创建
- set = set()
- set = {1,5,2,3,8,2,8}
方法
s = set()
s1 = {1,5,2,3,8,2,8}
s.add("a") #增加元素
print(s) #结果:{'a'}
s.update(s1) #去重 并集s1集合
print(s) #结果:{'a', 1, 2, 3, 5, 8}
s.remove('a') # 删除值,删除不存在的值 会报错
print(s) #结果:{1, 2, 3, 5, 8}
s.pop()#随机删除
print(s) #结果:随机删除某元素
s.discard('a') #删除值,删除不存在的值 不会报错
print(s) #结果:{2, 3, 5, 8}
s.clear( )#清除集合
print(s) #结果:set()
运算
s1 = {1,2,3,4,5,6,7,8}
s2 = {4,5,6,7,8,9,10,11}
#并集 集合相加去重
print(s1 | s2 )
#补集 去除两个集合相同部分
print(s1 ^ s2 )
#交集 保留两个集合相同部分
print(s1 & s2 )
#差集 保留只有集合A拥有的元素
print(s1 - s2 )
字典 dit(键值对)
特点:
- 无序
- 值可修改
- 键值对形式储存
- 创建 d = { }
方法
d = {'name':"zheung","age":80,"gender":"mail"}
# ---------增加和修改:---------
# 执行逻辑:先改,若查无此键,则增加
d['name'] = "lili"
print(d) #结果:{'name': 'lili', 'age': 80, 'gender': 'mail'}
# -----------删除----------
del d["name"] #根据键 删除值
print(d)#结果:{'age': 80, 'gender': 'mail'}
# d.pop(键名,默认值) 根据键删除值,返回被删除的值,没有键返回默认值
pop1 = d.pop('age')
pop2 = d.pop('asdf','default')
print(pop1)#结果:80
print(pop2)#结果:default
d.clear( )# 清空
print(d)#结果:{}
# # -----------获取----------
d = {'name':"zheung","age":80,"gender":"mail"}
d.items() #获取字典内容
print(d.items())#结果:dict_items([('name', 'zheung'), ('age', 80), ('gender', 'mail')])
# d.get(键名,默认值)根据键获取值,没有键返回默认值
get1 = d.get('name')
get2 = d.get('name1',"default")
print(get1)#结果:zheung
print(get2)#结果:default
# keys( ) 获取所有键
ks = d.keys()
print(ks)#结果:dict_keys(['name', 'age', 'gender'])
# values( ) 获取所有值
vs = d.values()
print(vs)#结果:dict_values(['zheung', 80, 'mail'])