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

[经验分享] python list

[复制链接]

尚未签到

发表于 2018-8-5 06:51:57 | 显示全部楼层 |阅读模式
  同属于一个列表的数据,可以是不同的类型
  特色:存储于用一个列表的数据都是以数字来作为索引的,即作为操作存取其中各个元素的依据。
  a_list
  0 1 2 3 4
  int int int int int
  1 3 5 7 9
  索引分别为 0,1,2,3,4
  每个元素可有自已的类型,均为int,内容分别是
  1、3、5、7、9
  a_list = [ 1,3,5,7,9 ]
  数字列表
  \>>> a_list=[1,3,5,7,9]
  \>>> a_list
  [1, 3, 5, 7, 9]
  \>>> a_list[0]
  1
  字符串列表
  \>>> str_list=['P','y','t','h','o','n']
  \>>> str_list
  ['P', 'y', 't', 'h', 'o', 'n']
  \>>> str_list[2]
  't'
  字符串split 方法
  \>>> str_msg="I Love Pyton"
  \>>> b_list=str_msg.split()
  \>>> b_list
  ['I', 'Love', 'Pyton']
  一个英文句子拆成字母所组成的列表,用list() 函数,
  \>>> str_msg="I Love Pyton"
  \>>> c_list=list(str_msg)
  \>>> c_list
  ['I', ' ', 'L', 'o', 'v', 'e', ' ', 'P', 'y', 't', 'o', 'n']
  \>>>
  同一个列表中可以用不同的数据类型,列表中也可以有其他的列表
  \>>> k1=['book',10]
  \>>> k2=['campus',15]
  \>>> k3=['cook',9]
  \>>> k4=['Python',26]
  \>>> keywords=[k1,k2,k3,k4]
  \>>> keywords
  [['book', 10], ['campus', 15], ['cook', 9], ['Python', 26]]
  \>>> keywords[2]
  ['cook', 9]
  \>>> keywords[2][0]
  'cook'
  \>>> keywords[2][1]
  9
  \>>>
  可以使用”+“运算把两个列表放在一起,还可以 检测某一个数据是否在列表之中
  \>>> "Python" in k4
  True
  \>>> k4 in keywords
  True
  \>>> ["Python",26] in keywords
  True
  \>>> keywords+k1+k2
  [['book', 10], ['campus', 15], ['cook', 9], ['Python', 26], 'book', 10, 'campus', 15]
  \>>>
比较常用的操作方法和函数
  列表表达式                                         操作结果说明
  lst * n     把lst类表重复n次
  lst[n1:n2]      把索引组n1到n2的列表内容取出,组成一个列表
  lst[n1:n2:k]    同上,但取出间隔为k
  del lst[n1:n2]  删除索引值n1到n2之间的元素
  lst[n1:n2]=n    把索引值n1到n2之间的元素设置为n
  lst[n1:n2:k]=n  同上,但间隔为k
  del lst[n1:n2:k]    删除索引值n1到n2之间的元素,但间隔为k
  len(lst)    放回类表的个数
  min(lst)    返回列表的最小值
  max(lst)    返回列表的最大值
  sum(lst)    返回列表的求和值
  lst.index(n)    返回列表中第一个出现n的索引值
  lst.count(n)    计算出n 在列表中出现的次数
  \>>> x=list(range(10))
  \>>> x
  [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
  \>>> x*2
  [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
  \>>> y=x[1:7]
  \>>> y
  [1, 2, 3, 4, 5, 6]
  \>>> y=x[1:7:2]
  \>>> y
  [1, 3, 5]
  \>>> del x[1:7]
  \>>> x
  [0, 7, 8, 9]
  \>>> x=list(range(10))
  \>>> x
  [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
  \>>> del x[1:7:2]
  \>>> x
  [0, 2, 4, 6, 7, 8, 9]
  \>>> x=list(range(10))
  \>>> x
  [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
  \>>> len(x)
  10
  \>>> max(x)
  9
  \>>> min(x)
  0
  \>>> x=list(range(3))
  \>>> x
  [0, 1, 2]
  \>>> sum(x)
  3
  \>>> msg="Here is the string"
  \>>> lst=list(msg)
  \>>> lst
  ['H', 'e', 'r', 'e', ' ', 'i', 's', ' ', 't', 'h', 'e', ' ', 's', 't', 'r', 'i', 'n', 'g']
  \>>> lst.index('e')
  1
  \>>> lst.count('e')
  3
  \>>>
  列表操作方法:
  (其中lst表示列表变量,x表示列表元素或是另外一个列表变量,n为数值)
  lst.append(x)       将x视为一个元素,附加到列表的后面
  lst.extend(x)       将x 中的所有元素附加到列表的后面
  lst.insert(n,x)         把x插入到索引值为n的地方
  lst.pop()               弹出列表中最后一个元素,可以参数指定特定的索引
  lst.remove(x)       从列表中删除第一个出现的x
  lst.reverse()       反转列表的顺序
  lst.sort()          将列表的元素内容加以排序
  append 与 extend 区别
  \>>> lsta=[1,2,3,4,5]
  \>>> exb=[5,5,5,5]
  \>>> lsta.extend(exb)
  \>>> lsta
  [1, 2, 3, 4, 5, 5, 5, 5, 5]
  \>>> lsta=[1,2,3,4,5]
  \>>> lsta.append(exb)
  \>>> lsta
  [1, 2, 3, 4, 5, [5, 5, 5, 5]]
  pop操作
  \>>> lst=[0,1,2,3,4,5]
  \>>> lst.append(9)
  \>>> lst.append('x')
  \>>> lst
  [0, 1, 2, 3, 4, 5, 9, 'x']
  \>>> lst.pop()
  'x'
  \>>> lst.pop(2)
  2
  \>>> lst
  [0, 1, 3, 4, 5, 9]
  \>>>
  \>>> cars=['bwm','audi','toyota','subaru']
  \>>> cars.sort()
  \>>> cars
  ['audi', 'bwm', 'subaru', 'toyota']
  \>>> cars.reverse()
  \>>> cars
  ['toyota', 'subaru', 'bwm', 'audi']
  \>>>
  \>>> cars.remove('bwm')         用于不知道具体的索引位置,只知道具体的值
  \>>> cars
  ['toyota', 'subaru', 'audi']
  \>>> cars.insert(1,'haima')        指定位置插入
  \>>> cars
  ['toyota', 'haima', 'subaru', 'audi']
  \>>>
  \>>> cars
  ['toyota', 'haima', 'subaru', 'audi']
  \>>> for x in cars:
  ...   print x
  ...
  toyota
  haima
  subaru
  audi
  \>>> for x in cars:
  ...    print x.title()
  ...
  Toyota
  Haima
  Subaru
  Audi
  \>>>
  通过循环创建所需列表
  \>>> atest=[]
  \>>> for value in range(1,11,2):
  ...     a=value**2
  ...     atest.append(a)
  ...
  \>>> print atest
  [1, 9, 25, 49, 81]
  \>>> atest2=[value**2 for value in range(1,11,2)]
  \>>> print atest2
  [1, 9, 25, 49, 81]
  \>>>
  \>>> list_2d=[[0 for i in range(5)]for i in range(5)]
  \>>> list_2d
  [[0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0]]
  \>>> list_2d[0].append(3)
  \>>> list_2d[2].append(7)
  \>>> list_2d
  [[0, 0, 0, 0, 0, 3], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 7], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0]]
  \>>>

运维网声明 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-546683-1-1.html 上篇帖子: python初学之一 下篇帖子: python string
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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