一、创建列表的几种方法
- x=list(range(1,100))
- x=[ ]
for i in range(1,100):
x.append(i) - x=[i+2 for i in range(1,100)]
表示对每一个i进行+2的操作
结果为[3,4, …99,100,101] - x=[ ]
for i in range(1,100)
x=x+[i]
二、随机数的使用
注意:使用前要 import random
- random.random()产生一个0到1之间的随机数
- random.randint(a,b)产生一个a,b之间的整数随机数
- random.shuffle(x) x表示一个列表,此用法将随机打乱列表的顺序
- random.choice(x) x表示一个列表,从元组里面随机挑出一个元素
- 产生100个1-100之间属随机数:
x=[random.randint(1,100) for i in range(100)]
三、列表删除元素的几种用法
7. x.pop(i) 函数用法:( )默认为-1,删除尾部元素。如果为i,删除列表对应位置的元素
8. del x[1] 命令用法: 删除[ ]中指定位置的元素
9. x.remove(a) a表示一个具体的值,操作会删除a在列表中首次出现的值
四、浅复制和深复制
10. 浅复制
a=[1,2,3,4]
b=a
b[0]=-100
结果a的值发生了改变
a=[-100,2,3,4,5,6]
浅复制b=a两组引用了相同的列表,此时id(a)等于id(b),列表会同时改变。
- 深复制
a=[1,2,3,4]
b=[ ]
for i in a:
b.append(i)
进行逐一赋值为深复制,id(a)不等于id(b)
五、sort方法
- a.sort( ) 对列表由小到大进行排序
- a.sort( reverse=True)对列表由大到小进行排序
- x.sort(key=lambda x:math.sin(x))表示按照math.sin(x)的大小对x进行排序
- x.sort(key=lambda x:math.sin(x),reverse=True)表示对结果再进行倒序
- sorted(x)也对x列表进行排序,但是不改变x列表本身,只是返回结果
六、常用函数
- max(x):挑选列表最大值
- min(x):挑选列表最小值
- sum(x):对列表中的元素求和
- x.insert(len(x),200)在数组的末尾加入一个数200;第一个参数表示位置,第二个表示要插入的值
七、词典
-
x=[1,2,3]
y=[11,12,13]
list(zip(x,y))=[(1,11),(2,12),(3,13)] -
for x in enumerate(“123”)
结果为 (0,‘1’)(1,‘2’) (2,‘3’) -
x=[2*i for i in range(64)]
表示x=[2,4,8,…,126]的列表 -
x={“a”:1,“b”:2,“c”:3}表示词典
- “a‘’表示键,对应的1表示值
- x[‘a’]=1,x[‘b’]=2
- x.keys()返回所有的键集合,x.values返回所有的值集合
- 修改字典的值,给对应的键赋值即可 如x[‘a’]=3
结果为{“a”:3,“b”:2,“c”:3} - 当字典中不存在赋值的键时,会自动添入 如x[’&’]=3
结果为 {“a”:1,“b”:2,“c”:3,"&":3} - max(x.values())挑选最大值,min(x.values())t挑选最小值
- [n for n,s in x.items() if s==1]表示挑选值为1对应的键
- x.pop("r’)表示将"r"键从字典中移除
-
组装词典
- x=[chr(i) for i in range(ord(“a”),ord(“z”+1))
- y=list(range(1,27))
- dict(zip(x,y)
- 补充:chr(97)=‘a’ ,ord(“a”)=97
-
update用法
z.update({“c”:2,“d”:4})
update用法会将已有的键值对更新,没有的自动加入字典 -
get用法
- z.get("!")有键对应值时返回。没有则不返回
- z.get("!",0) 有键对应值时返回。没有则返回0
八、元组
- (1,2,3)表示元组,一旦定义不能修改
- 元组没有append(),extend(),insert()方法,无法向其中添加元素
- 元组没有remove()或pop()方法,不能进行del操作,不能删除
- tuple()表示冻结,list()表示融化
- x1=tuple(“abc”) 结果为(’‘a’,’‘b’,’‘c’)
九、string用法
- 需要import string
- string.ascii_letters 表示含有所有大小写字母的字符串
- string.digits表示从0到9所有数字的字符串
- string.puctuation表示除上面两种以外的所有字符串
- ‘’.join(y)表示将y由列表变成字符串
十、集合
- a={1,2,3,4,5} b={5,6,7} a,b表示集合
- 用法
1. a|b 表示a与b的并集
2. a&b 表示a和b的交集
3. a-b 表示a与b的差集 - {1,22,22}={1,22}集合会将重复元素自动删除
- 强制类型转换的方法:set(x)
十一、词典计数
- d=dict()
d={}
for ch in y:
d[ch]=d.get(ch,0)+1
表示对y列表中的每一个字符进行统计
十二、补充
- x=[1,2,3]
1 in x True
[1] in x False - math.sqrt(x)表示对x开方
- math.pow(x,n)表示x的n次方
- 解包序列
- a=[1,2,3]
x,y,z=a
则 x=1,y=2,z=3
- a=[1,2,3]
python入门(第3节实践课)).
传送门:python学习(第二节课).
传送门:python学习(第四节课).
努力,就应该有回报,Taylor Swift 最新付费歌曲,来拿吧
Taylor Swift - Lover.
提取码:a8r4
福利:这有五月天和周杰伦的新歌《说好不哭》的资源哟!
《说好不哭》.
提取码:jf06
福利2:林俊杰新歌《将故事写成我们》
《将故事写成我们》.
提取码:ltg4