本文已参与「新人创作礼」活动,一起开启掘金创作之路。
Python基础知识详解 从入门到精通(四)
==其他python学习笔记集合==:
列表(list)
查看列表内置函数 dir(list)
创建列表 列表 m = [‘slk’,3,4,6.44,[2,4,6]] 空列表 m = []
/ 是续行
如 [3,3,45,/
5,6,7] 是合法的 第二行会自动接上上面/的位置
用于其他也合法
向列表中添加元素 列表名.append(元素) 将元素添加到列表末尾 列表1名.extend(列表2) (列表2,可以用列表名 也可以直接放列表)将列表2添加到列表末尾 列表名.insert(n,元素) 将元素添加到n位处(从0开始),后面的元素自动退一位
从列表中获取元素
可直接用索引值(从0开始的排序序号)
如 列表名[n]
两层列表 列表名[n][m]
删除元素 列表名.remove(元素) 这个元素要在列表中,会删除第一个匹配的元素 del 列表名[n] n为索引值 ,删除该元素后,其他元素前进一位 del 列表名 删除整个列表 列表名.pop(n) 删除列表[n]的元素,并返回这个元素的值,n从0开始,没有n默认为末尾元素
列表分片 (字符串,元组也有) 列表名[n :m:步长] 得到从n(包含)到m(不包含)的元素,,,得到的是原列表的拷贝 忽略n默认从0开始,,忽略m默认到结尾,,带负号为倒数,可都忽略(拷贝整个) 可用于赋值另一个列表
列表比较, 从第0个开始比较, 有结果即结束 如 list1=[123,456] list2=[234,123] list1>list2 结果为false或0 若是字符串就比较ASCII码 同理
成员关系运算符 in 与 not in 如 555 in list1 结果为False 123 in list1 结果为true 只能判断一层关系, 如list5=[1,2,[‘kk’,4]] Kk in list5 结果为 false 若两层则 kk in list5[1] 结果为 true
list4= lsit1 + list2 结果为[123,456,234,123] 与拼接类似 list1*3 结果为[123,456,123,456,123,456] 不改变list1 list1 *=3 改变
内置函数 列表名.count(元素) 返回该元素在列表出现的次数 元组可以 列表名.index(元素) 返回第一个出现的该元素的索引值 元组 列表名.index(元素,n,m) 从n开始找到m 返回第一个出现的该元素的索引值 列表名.sort() 将列表元素字母顺序升序排序 列表名.sort(func,key,reverse) func,key是默认的 若 列表名.sort(reverse=True) 将列表元素字母顺序降序排序 列表名.sorted() 与sort用法一样,但是不修改原列表的顺序,返回修改顺序的列表 列表名.reverse() 将列表倒置
若list1= list2 不是拷贝,list1变化list2也变化 相当于指定list2也为list1,是同一个,加个名字而已,让list1指向list2 List1 = list2[ : ] 拷贝 不一起变化
元组(tuple)
==元组创建之后不可改变==这是与列表最大的区别,内置函数、使用方法很多都一样
创建元组
如 tuple1 =(1,2,3,4,5,6)
或tuple1 = 1,2,,4,5,6 用小括号或不要(逗号是标志),,,,列表用中括号
空元组 tuple1 = ()
只有一个元素的元组 tuple1 = (1,) 后面要加一个逗号
元组更新 如 tuple1 = (‘a’,’b’,‘d’) 要插入c tuple1 = tuple[ :1] + (‘c’ , ) + tuple1 [1 :] 要删除某个也是这种方法
删除整个元组 del 元组名
元素访问,“元组分片” 拼接(+),重复(*),成员关系运算符,比较, 都与列表一样
字典(dict)
==字典相当于映射== 创建字典,关键{} Dict1 = { 1:‘hhh’,2:‘weee‘} #其中1是键(key) hhh是值(value) Dict2 = {‘ss’:’bb’,’l’:’shjhh’} 空字典 dict3 = {} Dict4 = dict(((‘a’,78),(‘e‘,99))) 即得到 dict4={‘a’:78,‘e‘:99} Dict5 = dict (哈哈=‘hhhh‘,哈哈哈=’hh‘) 即得到 dict={哈哈:‘hhhh‘,哈哈哈: ’hh‘} Dict6.fromkeys((1,2,3),‘Number’) 得到dict6 = {1:‘Number ’,2:‘Number ’,3=‘Number ’} 第二个参数没有时候默认为Nome,常用于初始化(若原本已经有key存在,则清除),其中dict6要原本已经是字典类型
使用字典
是无序的,不能索引,只能用key
Dict1 [1]
Dict1[1]=’jsdjs ‘ 可改变原来的值
Dict1[3]=’ sklahh’ 在dict1中自动创建一个键
字典名.keys() 取键值
如 dict1.fromkeys(range(10),’赞’)
for eachkey in dict1.key():
print(eachkey,end=‘ ’)
结果为 0 1 2 3 4 5 6 7 8 9 10
字典名.values() 取字典值
用法同上
字典名.items() 取整个项即键加值
用法同上 结果为 (0,’赞‘)(1,’赞‘)……
遍历字典 Iii={1=11,2=22,3=44} 如for key,value in iii.items(): 这样可以一次便利键和值
字典嵌套 如student1={‘数学‘=111,’语文‘=98} Student2={‘数学‘=111,’语文‘=98} Student3={‘数学‘=111,’语文‘=98} stu={ Student3,Student2,Student1} for name in stu print(neme)
==示例== #创造30个学生成绩并输出 Stus={} For I in range(0,30):#制作循环次数 New_stus={‘数学‘=111} Stus.append(new_stus) #循环一次创造一个学生成绩 For I in stus: Print(stus)
内置函数 字典名.get(key) 如不存在返回None 否则返回字典值 可以用成员操作符判断key 如 22 in dict1
字典名.clear() 清空字典 (列表也有) 字典名.copy() 复制字典 如a= b 不是复制而是让a b指向同一个字典(列表也有) 字典名.pop(key) 返回原字典中相对应key的值,同时删除这个键 字典名.popitem() 随机返回一个项 形式:(key,值),并删除这个项 字典名.setdefault(key) 若key存在则返回字典值,不存在则自动创建一个,也可指定创建的值(如 字典名.setdefault(key,值)),否则值为None 字典名.update(字典) 用一个字典或映射关系更新另一个字典 如 a={1:11,2:22,3:33} b={3:77} a. uodate(b) 结果a = {1:11,2:22,3:77}
集合(set)
==集合是无序的,不能索引== 创建 Num={1,,2,3,4,5} 花括号括起来的值,若不体现映射关系 则为集合 集合的元素是唯一的 若num={1,2,3,4,5,5,4,3,2,1} 重复的值会被忽略 结果为 num ={1,2,3,4,5} Set1= set([1,2,3,4,5,5])结果 set1={1,2,3,4,5}
不可变集合 Num = frozenset([1,2,3,4,5])
使用
集合名,add(值) 添加值 集合名.remove(值) 删除值
最后
持续更新arduino 树莓派 python linux c语言等等 接到有帮助的话 求点赞👍 求关注❤️ 求分享👥 有问题可以评论 点关注,不迷路 如果有任何错误,如何建议,请批评指教,不胜感激 !