第二章:列表和元组

python中最基本的数据结构为序列,序列又有字符串,列表和元组。其中列表是可以修改的,而元组是不可修改的。

列表的写法是aa=["张三",21],将所有的元素放在[](方括号)中,用逗号分隔。

元组的写法很简单,只要将值用逗号分隔就能自动创建元组,1,2,3;(1,2,3)通常用圆括号括起来写,还有一点要注意,如果只包含一个值的元组,也需要用逗号如1,或者(1,)这样写。

序列通用的操作

1、索引

索引很简单,等价于Java中的下标,greeting='Hello',greeting[0]的索引是'H',想从右往左只需要把方括号内的索引改成负数即可,如greeting[-5]的索引也是'H'。

2、切片

索引是访问单个元素,切片就是访问特定范围内的元素。用两个索引,使用:分隔,greeting="Hello",greeting[1:3]为el,注意第一个索引指定的元素包含在切片内,第二个索引指定的元素不包含在切片内。


2.1切片可以简写,如切片结束于序列末尾,第二个索引可省略[3:],始于开头第一个索引可省略[:5],要复制整个序列,两个索引都可省略[:]。

2.2numbers=[1,2,3,4,5,6,7,8,9,10],numbers[0:10:2]第一个和第二个为索引,第二个索引是因为有10个数,索引有9个,数字10的索引为9,如果写9就取不到数字10,故往后加一个,第三个数为步长,上面是步长为2即隔一个元素提取,numbers[0:10:2]的结果为[1,3,5,7,9],步长不能为0,否则不能向前移,但可以为负数,从右向左提取。

3、序列相加

相同的序列可以相加,[1,2,3]+[4,5]结果为[1,2,3,4,5],注意必须是相同的序列才可以相加。

4、乘法

将序列与数x相乘,将重复这个序列x次来创建新序列,'abc' * 3结果为'abcabcabc',如果需要创建一个可包含5个元素的列表,但没有任何内容,可以用None,在Python中None表示什么都没有。aa=[None]*5

5、成员资格

要检查特定字符是否包含在序列中,可使用运算符In。

python='rw'

w in python 结果为false,in返回的是布尔值包含返回true,反之返回false

序列中有内置函数len、min和max,len是返回序列包含的元素个数,min和max则是最小最大值。

列表中有一个list函数可以将任何序列,字符串转换为列表,而元组中也有一个tuple可以将一个序列作为参数,转换为元组。

基本的列表操作

1、修改列表:给元素赋值

x=[1,2,3]

x[1]=1

输出x结果为[1,1,3],将值1赋值给元素2

2、删除元素

x=[1,2,3]

del x[0]

输出x结果为[2,3],元素1被删除

3、给切片赋值

name = list('python')

name[1:]=list('aaaaa')

输出name结果为paaaaa,还有在不替换原有元素情况下还可以用作插入新元素。

列表的方法

1、append将一个对象附加到列表末尾

2、clear清空列表内容

3、copy复制列表

4、count计算指定的元素在列表中出现了多少次。

5、extend同时将多个值附加到列表末尾

6、index在列表中查找指定值第一次出现的索引

7、insert将一个对象插入列表

8、pop从列表中删除一个元素,默认是最后一个元素

9、remove用于删除第一个为指定值的元素

10、reverse按相反的顺序排列列表中的元素,其实就是倒叙

11、sort将列表正序排序

12、高级排序(sort可接受两个可选参数key和reverse,要根据长度对元素排序,可将参数key设置为函数len)

x=["aaaa","bb","ccc","d"]

x.sort(key=len)

输出x结果为["d","bb","ccc","aaaa"],另一个参数reverse=True即倒叙。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 主要区别,列表可以修改,元组不能;在除将元组作为字典的键外几乎所有情况下都可以用列表代替元组 一,通用序列操作(索...
    CangyeChen阅读 267评论 0 0
  • 31.python的序列感觉和其他语言中的数组类似。初看类似,实则强大太多! 2.序列和元组的区别在于序列可以修改...
    还是晕船阅读 296评论 0 0
  • 概述 列表、元组和字符串同属于序列的一种,都有序列的特点,每个元素都有编号,即其位置或索引,其中第一个元素...
    李树涛阅读 710评论 0 1
  • 秋日清晨,刚下过雨的空气中夹杂着泥土的气息,森林中的水珠在朝阳的映照下闪闪发光,如同天上的星辰。一切都那么美好...
    暮汐歌阅读 117评论 0 0
  • 2017年9月18日 星期一阵雨转多云23℃ 今天早上起来又下雨了,不愿起来。可今天事还挺多的,同学开业,朋友过生...
    c0deb784fc0b阅读 264评论 2 2