设为首页 收藏本站
查看: 1215|回复: 0

[经验分享] Python笔记——基本数据结构:列表、元组及字典

[复制链接]

尚未签到

发表于 2017-5-6 13:37:31 | 显示全部楼层 |阅读模式
转载请注明出处:http://blog.csdn.net/wklken/archive/2011/04/10/6312888.aspx

Python基本数据结构:列表,元组及字典


一、列表
一组有序项目的集合。可变的数据类型【可进行增删改查】
列表是以方括号“[]”包围的数据集合,不同成员以“,”分隔。
列表中可以包含任何数据类型,也可包含另一个列表
列表可通过序号访问其中成员

常用列表操作:
list.append()追加成员,成员数据
list.pop()删除成员,删除第i个成员
list.count(x)计算列表中参数x出现的次数
list.remove()删除列表中的成员,直接删除成员i
list.extend(L)向列表中追加另一个列表L
list.reverse()将列表中成员的顺序颠倒
list.index(x)获得参数x在列表中的位置
list.sort()将列表中的成员排序
list.insert()向列表中插入数据insert(a,b)向列表中插入数据

可通过
>>>help(list) 查看方法详情
print("-------list operations------")#列表操作l = [1,2,3,4,5]l2 = [7,8,9]print(l)#获得列表长度length = len(l)print(length)#追加一个元素,在列表最后一位l.append(6)print(l)#向列表中追加另一个列表l.extend(l2)print(l)#插入一个元素,在位置al.insert(0,0)print(l)#将列表顺序颠倒l.reverse()print(l)#排序,从小到大l.sort()print(l)#统计某个元素出现的次数c = l.count(0)print(c)#查找某个参数在列表中的位置,未命中则抛异常i = l.index(1)print(i)#删除某个位置的成员l.pop(0)print(l)l.append(1)#直接删除某个值的成员,若有多个,删除第一个l.remove(1)print(l)
结果:
DSC0000.gif



列表补充:2011-4-17
#列表操作补充--切片操作example = [0,1,2,3,4,5,6,7,8,9]#打印某一区间 左闭右开print(example[4:8])#想包含最后一个print(example[4:])#包含首个print(example[:8])#所有的print(example[:])#第三个参数为步长print(example[1:8:2])#倒序输出print(example[::-1])#列表合并a = [1,2,3]b = [4,5,6]print(a+b)#替换ex = [1,2,3,4,5,6]ex[4:]=[9,8,7]print(ex)#将56换为987#插入ex[1:1] = [0,0,0]print(ex)#删除del ex[0:2]print(ex)#或者ex[6:]=[]print(ex)#比较one = [1,2,3]two = [1,2,3]print(one == two)#trueprint(one is two)#false#列表操作补充——字符串也是列表str = "abcdefg"print(str[0])#将一个字符串转为字符数组print(list(str))#字符串s = "abcdefg"#判断是否包含print('a' in s)#函数和模块import math#将一个变量指向一个函数se = math.sqrtprint(se(81))

结果:
DSC0001.gif
二、元组
不可变序列
元组是以圆括号“()”包围的数据集合,不同成员以“,”分隔
与列表不同:元组中数据一旦确立就不能改变

通过下标进行访问


声明:
L=(1,2,3)
0个元素的元组: L = ()
1个元素的元组:L=(1,) 注意有逗号

#元组操作#声明o =('a','b','c',('d1','d2'))o1 = ()o2 = (1,)#访问print(o[0])print(o[3][0])#用于打印语句age = 22name = 'tom'print("%s is %d years old"%(name,age))

DSC0002.gif
三、字典
键值对的集合(map)
字典是以大括号“{}”包围的数据集合
与列表区别:字典是无序的,在字典中通过键来访问成员。
字典是可变的,可以包含任何其他类型

声明:
M={k1:v1,k2:v2}
访问 M[k1]将得到v1


常用字典操作:
dic.clear()清空字典
dic.keys()获得键的列表
dic.values()获得值的列表
dic.copy()复制字典
dic.pop(k)删除键k
dic.get(k)获得键k的值
dic.update()更新成员,若成员不存在,相当于加入
dic.items()获得由键和值组成的列表
dic.popitem
可以通过
>>>help(dict) 查看详情
#字典操作m = {'a':1,'b':2,'c':3}print(m)#读取某一个_通过keyprint(m['a'])#读取某一个,通过get方法print(m.get('b'))#复制字典m2 = m.copy()print(m2)#获取所有键的列表print( m.keys() )#获取所有值的列表print( m.values() )#获取所有键值对元组组成的列表print( m.items() )#更新成员,当对应键值不存在时,相当于加入m.update({'d':4})print(m)#删除某个成员m.pop('a')print(m)
DSC0003.gif

四、序列的索引和切片
列表、元组和字符串都是序列
序列的两个主要特点是索引操作符和切片操作符。
索引操作符让我们可以从序列中抓取一个特定项目。即下标操作,用方括号和数字抓取某个位置的项目,L[0]抓取第一个元素,L[-1]抓取最后一个元素
切片操作符让我们能够获取序列的一个切片,即一部分序列。方括号加一对可选数字,切出某个子片L[1:3] 返回1-2的子片,L[2:]2开始到最后,L[:]整个

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-373879-1-1.html 上篇帖子: python中读写文件及中文编码处理方法 下篇帖子: python py2exe 创建exe可执行文件
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表