python基础(一)字符串、元祖、字典、列表

元祖和列表的区别:

元祖(Tuple)是静态的,长度不可变,且内部数据无法改变。符号()

列表(List)是动态的,长度可变。符号:[]

字典(Dictionary),长度可变,符号:{'key':'value'}

字符串函数:

字符串的判断和大小写

s.endswith(x)

以x结尾

s.startswith(x)

以x开头

s.isalnum()

包含字母或数字 

s.isalpha()

只包含字母

s.isdecimal()

只包含十进制数字

s.isdigital()

只包含数字

s.isidentifier()

合法字符

s.isnumericc()

只含数字

s.isprintable()

只含可打印字符

s.isspace()

只含空白字符

s.istitle()

大小写符合头衔要求

isinstance(a,str)

判断两个变量类型是否一致
s.capitalize() s[0]首字符大写
s.swapcase() 小 写字母大写,大写字母小写
s.islower() 只含小写
s.isupper() 只含大写
s.lower() 变为小写
s.upper() 变为大写
字符串的测量和查找

len(str)

字符串长度

s.count(t)

统计t出现的次数

s.find(x)

找到返回x 的起始位置,没找到返回-1
s.rfind(x)  
s.index(x) 返回x的下标
s.rindex(x)  
s.append(): 加入一个元素

 正则表达式和运用

#正则
1、cats? ‘?’表示,左边的字符串可选,所以这个字符串就表示:cat和cats
2、x|y,表示x,y
3、x*  ,表示' '、x、xx、xxx、xxxx等
4、x+ ,表示x、xx、xxx、xxxx等

#正则表达式的运用
如:’(ha)+!‘表示:hahahahahaha!
return s =='done' or s =='quit'
return re.match('done|quit',s)!=None:需要导入import re
re.match('(ha)+!+',s)!=None 有多个hahahaha和!!!!!!!!!!!!
格式化构造

'{0} likes {1}' .format('Jack','ice cream')

=>jack likes ice cream

'{who} {pet} has fleas' .format(pet = 'dog',who  ='my')

=>'my dog has fleas'

'{0:0.1f} {1}' .format(27.655,"GB")

=>27.7 GB
'%c %c %c' % (97,98,99)   =>a b c
s.zfill(width)       在左边添加足够多的零,让字符串的长度为width
s.center(n,ch) 包含n个字符的字符串,其中s位于中央,两边用字符ch填充
s.ljust(n,ch)  包含n个字符的字符串,其中s位于左边,右边用字符ch填充
s.rjust(n,ch)   包含n个字符的字符串,其中s位于右边,左边用字符ch填充
' '.join(['once','upon','a','time']) ==>once upon a time
''.join(['once','upon','a','time']) ==>onceuponatime
'-'.join(['once','upon','a','time']) ==>once-upon-a-time
字符串的拆分
s.partiton(t)   将s拆分为三个字符串,以t为分隔
s.rpartiton(t)   与partition相同,但从右端开始搜索t
s.split()        以t为分隔符,将s划分成一系列子串,并返回一个由这些子串所组成的列表
s.rsplit()      与partition相同,但从右端开始搜索t
s.splitlines()       返回s中各行组成的列表
s.strip(ch) 从s开头和末尾删除所有包含在字符串中开头的字符
s.lstrip(ch) 从s开头(左端)删除所有包含在字符串ch中的字符
s.rstrip(ch) 从s开头(右端)删除所有包含在字符串ch中的字符
#替换
s=s.translate(str.maketrans('', '', ',')) 

字典:构成映射关系

d.items()

返回一个由字典d的键-值对组成的视图

d.keys()

返回一个由字典d的键组成的视图

d.values()

返回一个由字典d的值组成的视图

d.get(key)

返回一个与key相关联的值

d.pop(key)

删除key并返回与之相关联的值

d.popitem()

返回字典d中的某个键-值对

d.clear()

删除字典中所有元素

d.copy()

复制字典d

d.fromkeys(s,t)

创建一个新字典,其中键来自s,值来自t

d.setdefault(key,v)

如果键key包含在字典d中,则返回其值;否则,返回v并将(key,v)添加到字典d中。

d.update(e)

将e中的键-值对添加到字典d中,e可以是字典,也可以是键-值对序列

列表

insert(x,“y”)

在第x个位置插入y list_x.remove('nancy') 删除列表中的变量名 *list_x.count(X) 计算参数X在列表中出现的次数

*list_y=sorted(list_x)

列表排序,从小到大

*s.append(x)

末尾添加x

*s.index(x)

返回第一次x元素下表

*enumerate(list_x)

返回index+element

[n*n for n in range(1,10)

][c.upper() for c in 'pizza']

列表解析:

[n for n in nums if n > 0]

列表筛选:
list_y=list(reversed(list_x)) 列表反转
list_x.extend([12.33,14.56]) 加入几个元素——用一个列表去扩展另一个列表

list3 = list1

列表相同,之后做修改也会同步,只是在内存中多了一个指向列表的标签

list_x.pop() 取出一个元素(默认为最后一个元素)并删除

member[1:3]

切片,分出列表

list2 = list1[:]

备份列表,内存拷贝

del member[x]

删除第x个元素

list[3][5]:

访问列表中的列表

list * 3

列表重复三次

“123” not in list3

 

猜你喜欢

转载自blog.csdn.net/qq_41375702/article/details/88172552