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

[经验分享] Python学习系列(四)(列表及其函数)

[复制链接]

尚未签到

发表于 2015-4-22 13:05:09 | 显示全部楼层 |阅读模式
  Python学习系列(四)(列表及其函数)
  
  Python学习系列(一)(基础入门)
   Python学习系列(二)(基础知识)
    Python学习系列(三)(字符串)
  


一、基本概念

1,列表是什么?

      一种序列型数据类型,一有序数据集合用逗号间隔用方括号括起来。

2,几种访问形式

1)索引访问,语法结构:list_name[index]。注意,列表的索引值从0开始。例如:



DSC0000.gif DSC0001.gif


1 >>> li=[1,2,3,4,5]
2 >>> print li[2],li[0]
3 3 1
View Code  删除列表的项:







1 >>> del li[2]
2 >>> print li
3 [1, 2, 4, 5]
View Code  2)切片访问,语法结构:list_name[start_index,end_index,step]。例如:







1 >>> li=[1,2,3,4,5]
2 >>> print li[2:4]
3 [3, 4]
4 >>> li=[1,2,3,4,5]
5 >>> print li[2:4:2]
6 [3]
View Code  删除列表项:







1 >>> del li[2:4]
2 >>> print li
3 [1, 2, 5]
View Code  3,基本运算


1)加法:将多个列表组合成一个新的更长的列表。






1 >>> li=[1,2,3,4,5]
2 >>> li1=range(6,9)
3 >>> li2=li+li1
4 >>> print li2
5 [1, 2, 3, 4, 5, 6, 7, 8]
View Code  2)乘法:相当于同一个列表相加了n次。







1 >>> print li1*2
2 [6, 7, 8, 6, 7, 8]
View Code  3)(not)in运算:即包含与否的运算,判断某个值是否为列表的元素。







1 >>> print 2 in li
2 True
3 >>> print 10 in li2
4 False
5 >>> print 10 not in li2
6 True
View Code  4)遍历:逐一访问列表里的各个元素通过for循环来依次取出列表的各个元素项的值。







1 >>> li1=[1,2,3,4,5]
2 >>> li=li1*3
3 >>> i=0
4 >>> for val in li:
5  print 'li[%d]'%(i),val
6  i+=1
7 (空格,Enter键运行)
8 li[0] 1
9 li[1] 2
10 li[2] 3
11 li[3] 4
12 li[4] 5
13 li[5] 1
14 li[6] 2
15 li[7] 3
16 li[8] 4
17 li[9] 5
18 li[10] 1
19 li[11] 2
20 li[12] 3
21 li[13] 4
22 li[14] 5
View Code  列表的解析:[val_expr for val in list_name],其中:
  val_expr:是变量val的运算表达式,val用于存储for每次从list_name列表取出的元素的值,用每一个val_expr的值作为构建新列表的元素项。
  练习:用列表求1~9的立方。







1 >>> li=range(1,10)
2 >>> print li
3 [1, 2, 3, 4, 5, 6, 7, 8, 9]
4 >>> li1=[x**3 for x in li]  #列表的解析
5 >>> print li1
6 [1, 8, 27, 64, 125, 216, 343, 512, 729]
View Code  二、相关函数


    列表的相关函数很多,可以通过help函数查看。现在选取几个比较重要的函数举例,加以理解。

1)len()函数:是Python内建函数不属于任何数据类型,一般序列型的数据都可以通过它来测得其长度。






1 >>> li=range(1,11)
2 >>> print li
3 [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
4 >>> print len(li)
5 10
View Code  2)count()函数:统计列表里某元素项出现的次数。







1 >>> li=range(1,3)
2 >>> li2=li*3
3 >>> print li2
4 [1, 2, 1, 2, 1, 2]
5 >>> print li2.count(li2[2])
6 3
7 >>> print li2.count('a')
8 0
View Code  3)insert函数:将对象添加到列表指定位置,列表里的元素顺序后移。







1 >>> li=[]
2 >>> li=range(1,11)
3 >>> print li
4 [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
5 >>> li.insert(5,10)
6 >>> print li
7 [1, 2, 3, 4, 5, 10, 6, 7, 8, 9, 10]
8  
9 >>> li.insert(6,li1)
10 >>> li
11 [1, 2, 3, 4, [5, 6, 7, 8, 9], [5, 6, 7, 8, 9]]
View Code  4)append函数:将对象添加到列表尾部位置。


例一:插入对象为列表里单个元素。






>>> li=[]
>>> li1=range(1,5)
>>> for x in li1:
li.append(x)

>>> print li
[1, 2, 3, 4]
View Code  例二:插入对象为列表。







1 >>> li=[]
2 >>> li1=range(1,5)
3 >>> for x in li1:
4  li.append(x)
5  
6  
7 >>> print li
8 [1, 2, 3, 4]
9 >>> li1=range(5,10)
10 >>> li.append(li1)
11 >>> print li
12 [1, 2, 3, 4, [5, 6, 7, 8, 9]]
View Code  5)extend函数:将一个列表是所有元素以个体的方式添加到列表的尾部。







1 >>> li1=range(1,6)
2 >>> li2=range(6,10)
3 >>> print li1,'\n',li2
4 [1, 2, 3, 4, 5]
5 [6, 7, 8, 9]
6 >>> li1.extend(li2)
7 >>> li1
8 [1, 2, 3, 4, 5, 6, 7, 8, 9]
View Code  6)remove函数:删除列表的第一次出现的指定元素。







1 >>> li=range(1,4)*3
2 >>> print 'li',li
3 li [1, 2, 3, 1, 2, 3, 1, 2, 3]
4 >>> print 'li=',li
5 li= [1, 2, 3, 1, 2, 3, 1, 2, 3]
6 >>> li.remove(2)
7 >>> print 'li=',li
8 li= [1, 3, 1, 2, 3, 1, 2, 3]
View Code

7)pop函数:删除列表指定位置的元素或者列表的尾部元素。






1 >>> li=range(1,4)*3
2 >>> print 'li=',li
3 li= [1, 3, 1, 2, 3, 1, 2, 3]
4 >>> li.pop()
5 3
6 >>> li
7 [1, 3, 1, 2, 3, 1, 2]
8 >>> li.pop(3)
9 2
10 >>> li
11 [1, 3, 1, 3, 1, 2]
View Code  练习:


1、用函数实现剔除表里重复的元素

i)remove函数实现:






1 >>> li='www.baidu.com'*10
2 >>> li=list(li)
3 >>> li.sort()
4 >>> i=0
5 >>> for s in li:
6 while li.count(s)>1:
7 li.remove(s)
8 i+=1
9
10
11 >>> print li
12 ['.', 'a', 'b', 'c', 'd', 'i', 'm', 'o', 'u', 'w']
View Code  ii)pop函数实现:







1 li=[1,1,1,2,2,2,3,3,3,3,4]
2 length=len(li)
3 print li
4 pos=length-1
5 while pos>=0:
6     r=li.count(li[pos])
7     if r>1:
8         i=0
9         while i>> t=tuple(range(1,10))
2 >>> print t
3 (1, 2, 3, 4, 5, 6, 7, 8, 9)
4 >>> print t[3]
5 4
6 >>> print t[2:8]
7 (3, 4, 5, 6, 7, 8)
View Code   四,小结
       本文介绍了Python的列表的基本概念,相关函数及其用法举例,还初步介绍了元组知识,通过练习,应该对Python的列表知识有一个初步的认识。

运维网声明 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-59639-1-1.html 上篇帖子: Python中的模块与包 下篇帖子: Python中classmethod与staticmethod区别
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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