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

[经验分享] Python学习三---序列、列表、元组

[复制链接]

尚未签到

发表于 2015-12-1 12:09:56 | 显示全部楼层 |阅读模式
一、序列
  1.1、序列概念
  pythn中最基本的数据结构是序列(sequence).
  序列中每个元素被分配一个序号-元素索引,第一个索引是0,第二个是1,以此类推。类似JAVA中数组和集合中的下标。
  从后向前,最后一个索引是-1,-2,。。。。
  python包含6种内建序列。最常用的两种类:列表和元组,其它内奸序列类型有字符串、Unicode字符串、buffer对象和xrange对象.
  列表和元组的主要区别在于,列表可以修改,元组不能修改。
  添加元素就用列表。
  由于 一些原因不能修改时就用元组。
  
二、序列
  2.1、序列概念
  使用[]定义,如green=['test','test1','test2']
  2.2、序列指定元素操作
  字符串也是由字符组成的序列
  使用len(序列名)获取序列长度
  最后一个元素是len()-1,
  使用序列名[索引号]获取指定索引元素
   DSC0000.png
DSC0001.png
  删除元素用pop(索引)函数,删除最后一位不用写索引
  修改指定索下元素:序列名[索引]=新值
  添加新元素在最后位置
  序列名.append(新元素)
DSC0002.png
  2.2、分片
  分片可以操作一定范围内的元素。
  分片通过冒号相隔的两个索引来实现
  如:taget='<a href="http://www.163.com">163 web sit</a>'
  taget[9:28]取的是从下标9开始到下标28的元素
  第一个索引元素是包含在分片内的,
  第二个索引则不包含在分片内。
DSC0003.png
  使用数字更明显
DSC0004.png
  2.3、使用步长
  [索引:索引:步长]
DSC0005.png
  负数做为步长时,必须让开始点大于结束点。
  以于一个正数步长,Python会从序列的头部开始向右提取元素,直到最后一个元素;
  而对于负数步长,则是从序列的尾部开始向左提取元素,直到第一个元素。
  
  2.4、序列相加
  2种相同类型的序列才可以相加想连接在一起,类型不同无法连接在一起
   DSC0006.png
  
  2.4、序列相乖
  用数字x乖以一个序列会生成新的序列,在新的序列中,原来的序列将被重复x次
   DSC0007.png
  None、列表和初始化
  空列表可以简单通过,两个中括号进行表示[]--什么都没有,但,如果想创建一个占用10个元素空间,却不包括任何有用内容的列表,可以[42]*10,或者[0]*10,这个就生成了一个包括10个0元素的列表,
  然而,有时可能会需要一个值来代表空值------意味没有放置任何元素,这个时候可以使用None,
  None是python内建值,它的确切含意是“这里什么都没有”,因此,如果想初始化一个长度为10的列表,可以使用[None]*10,
   DSC0008.png
  
  2.5、成员资格
  检查一个元素是不是在序列中,使用in运算符,在就返回True不在就返回False
   DSC0009.png
  2.6、长度、最大值和最小值
  长度用len(列表名)
  最大值max(列表名)
  最小值min(列表名)
   DSC00010.png
三、列表
  
  3.1、list函数
  字符串不能像列表一样被修改,使得list可以将字符串,拆分成列表,每个字符一个元素。适用于所有类型的序列,不只是字符串。
   DSC00011.png
  3.2、改变列表:元素赋值
  使用列表[索引]=新值即可
   DSC00012.png
  3.3、改变列表:删除元素
  序列可以使用pop(索引)来删除
  这里用del 列表名[索引]来删除
   DSC00013.png
  
  3.3、改变列表:分片赋值
  使用 列表名[索引:索引]=新值
   DSC00014.png

  可以使用步长来赋值,正负步长
   DSC00015.png
  
  3.3、列表:常用方法
  1.append()方法用于在列表末尾追加新的对象:列表.append(新的元素)
   DSC00016.png
  2.count方法统计某个元素在列表中出现的次数:列表.count(值)
   DSC00017.png
  3.extend 方法可以在列表末尾一次性追加加一个序列中的多个值。
   DSC00018.png
  4.index方法用于从列表中找出某个值第一次出现的下标索引列表.index(值)
   DSC00019.png
  5.insert方法用于将对象插入到列表 中,列表.insert(索引,值)
   DSC00020.png
  6.pop方法会移除列表中的一个元素,默认是最后一个,并返回这个元素的值。列表.pop();
   DSC00021.png
  7.remove方法用于移除列表中某个值的第一匹配项。列表.remove(值)
   DSC00022.png
  8.reverse 方法列表中的元素反向存放 。
   DSC00023.png
  9.sort()对列表进行排序
   DSC00024.png
  10.高级排序.如果需要按特定的方式排序而不是sort默认的方式)可以使用compare(x,y)的形式进行自定义比较
  compare(x,y)会在x<y是返回负数
  compare(x,y)会在x>y是返回正数
  compare(x,y)会在x=y是返回0
   DSC00025.png
  11.sort:方法有另外两个可选参数,key-reverse,如果使用它们,就要通过名字来指定,
  参数key与cmp类似,---必须提供,在一个排序过程中使用的函数,它不是来确定对象的大小,而是为每个元素创建一个键,然后所有元素根据键来排序,因此如果根据元素的长度进行排序,那么可以使用len作为函数
   DSC00026.png
  
  12.reverse:是简单的布尔值(True或者False),用来指明列表是否进行返向排序
   DSC00027.png
  
  
  
  
  四、元组
  
  4.1、元组概念
  元组列表一样也是序列,唯一不同是元组不能修改,字符串也是这样
  创建元组,语法:使用逗号,分隔一些值,就自动创建了元组.最好使用小括号
  使用(,,,,,,,)来声明
   DSC00028.png
  4.2、tuple函数
   DSC00029.png

  
  4.3、基本元组操作
  因为不能修改,只有访问操作了。
   DSC00030.png
  
  
五、所用函数
  cmp(x,y)   :比较两个值
  len(seq):序列的长度
  list(seq):把序列转换成列表
  max(args):返回序列或者参数集合中的最大值
  minx(args):返回序列或者参数集合中的最小值
  reversed(seq):对象序列进行反转迭代
  sorted(seq):返回已经排序的包含seq所有元素的列表
  tuple(seq):把序列转换成元组
  

运维网声明 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-145846-1-1.html 上篇帖子: 2015/9/18 Python基础(14):函数式编程 下篇帖子: python 网络编程-TCP/UDP
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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