一,Python 的列表数据类型包含更多的方法。 这里是所有的列表对象方法: list.append(x)

把一个元素添加到链表的结尾,相当于 a[len(a):] = [x] 。

list.extend(L)
将一个给定列表中的所有元素都添加到另一个列表中,相当于 a[len(a):] =
L。

list.insert(i, x)
在指定位置插入一个元素。第一个参数是准备插入到其前面的那个元素的索引,
例如 a.insert(0, x) 会插入到整个链表之前,而 a.insert(len(a), x)
相当于 a.append(x) 。

list.remove(x)
删除链表中值为 x 的第一个元素。如果没有这样的元素,就会返回一个错误。

list.pop([i ])
从链表的指定位置删除元素,并将其返回。如果没有指定索引, a.pop() 返回
最后一个元素。元素随即从链表中被删除。(方法中 i 两边的方括号表示这个参
数是可选的,而不是要求你输入一对方括号,你会经常在Python 库参考手册中遇
到这样的标记。)

list.index(x)
返回链表中第一个值为 x 的元素的索引。如果没有匹配的元素就会返回一个错
误。

list.count(x)
返回 x 在链表中出现的次数。

list.sort()
对链表中的元素就地进行排序。

list.reverse()
就地倒排链表中的元素。

二,链表方法使得链表可以很方便的做为一个堆栈来使用,堆栈作为特定的数据结构,最 先进入的元素最后一个被释放(后进先出)。用 append() 方法可以把一个元素添加 到堆栈顶。用不指定索引的 pop() 方法可以把一个元素从堆栈顶释放出来。例如:

>>> stack = [3, 4, 5] >>> stack.append(6) >>> stack.append(7) >>> stack

[3, 4, 5, 6, 7]

>>> stack.pop() 7
>>> stack
[3, 4, 5, 6]
>>> stack.pop()
6

>>> stack.pop()
5
>>> stack
[3, 4]

三,

5.1.2 把链表当作队列使用

你也可以把链表当做队列使用,队列作为特定的数据结构,最先进入的元素最先释放 (先进先出)。不过,列表这样用效率不高。相对来说从列表末尾添加和弹出很快; 在头部插入和弹出很慢(因为,为了一个元素,要移动整个列表中的所有元素)。

要实现队列,使用 collections.deque ,它为在首尾两端快速插入和删除而设计。 例如:

>>> from collections import deque
>>> queue = deque(["Eric", "John", "Michael"])

>>> queue.append("Terry")
>>> queue.append("Graham")
>>> queue.popleft()
’Eric’

# Terry arrives
# Graham arrives
# The first to arrive now leaves

>>> queue.popleft()
’John’

 

四,列表推导式

列表推导式为从序列中创建列表提供了一个简单的方法。 普通的应用程式通过将一些 操作应用于序列的每个成员并通过返回的元素创建列表,或者通过满足特定条件的元 素创建子序列。

例如, 假设我们创建一个 squares 列表, 可以像下面方式:

我们同样能够达到目的采用下面的方式: = **for in ()]

这也相当于 squares = map(lambda x: x**2, range(10)), 但是上面的方式 显得简洁以及具有可读性。

列表推导式由包含一个表达式的括号组成,表达式后面跟随一个 for 子句,之后可以 有零或多个 for 或 if 子句。 结果是一个列表,由表达式依据其后面的 for 和 if 子 句上下文计算而来的结果构成。

例如,如下的列表推导式结合两个列表的元素,如果元素之间不相等的话:

等同于:

>>> combs = []
>>> for x in [1,2,3]:

for y in [3,1,4]:
if x != y:

...
...
...
...
>>> combs
[(1, 3), (1, 4), (2, 3), (2, 1), (2, 4), (3, 1), (3, 4)]

 

python 列表 list的基本操作的更多相关文章

  1. python列表元素的基本操作

    1.列表元素的增加 python提供三种方法增加元素,append,extend,insert. 区别:例  list3=[1,10,100,1000,10000] A.   list3.append ...

  2. [转载] Python 列表(list)、字典(dict)、字符串(string)常用基本操作小结

    创建列表 sample_list = ['a',1,('a','b')] Python 列表操作 sample_list = ['a','b',0,1,3] 得到列表中的某一个值 value_star ...

  3. Python 列表(list)、字典(dict)、字符串(string)常用基本操作小结

    创建列表 sample_list = ['a',1,('a','b')] Python 列表操作 sample_list = ['a','b',0,1,3] 得到列表中的某一个值 value_star ...

  4. 转:Python 列表(list)、字典(dict)、字符串(string)常用基本操作小结

    转自:http://blog.csdn.net/business122/article/details/7536991 创建列表 sample_list = ['a',1,('a','b')] Pyt ...

  5. python列表基础操作

    Python列表基本操作 记住一句话,叫做顾首不顾尾 首先我们来定义一个列表 name = ["jixuege","dajiba","boduoye& ...

  6. Python—列表(一个“打了激素”的数组)

    我们在C语言中会使用数组来将一大堆数据类型一样的数据挨个摆在一起,但是数组有一个基本的要求,就是数据类型必须是一致的,我们知道Python的变量由于没有数据类型,也就是说Python没有数组这一概念, ...

  7. Python 学习笔记(八)Python列表(一)

    列表基本操作 列表(list)定义  列表是Python中的一种对象类型,也是一种序列 对象类型:list 表示方法:[ ] python 列表中的元素可以是任何类型的对象 >>> ...

  8. (转)python 列表与元组的操作简介

    python 列表与元组的操作简介 原文:https://www.cnblogs.com/QG-whz/p/4782809.html 阅读目录 列表 list函数 列表的基本操作 列表方法 元组 tu ...

  9. python学习9—文件基本操作与高级操作

    python学习9—文件基本操作与高级操作 1. 文件基本操作 打开文件,获得文件句柄:f = open('filename',encoding='utf-8'),open会查询操作系统的编码方式,并 ...

随机推荐

  1. [IntelliJ IDEA入门] 新建一个Java项目

    新建一个Project 是否有JDK配置 选择JavaEE 点击Next 项目路径和文件 .idea (directory based) 创建项目的时候自动创建一个 .idea 的项目配置目录来保存项 ...

  2. xpath提取到的中文乱码时的解决办法

    βҳ转换为正常的中文:

  3. Fiddler中session请求/响应类型与图标含义

    近期在看fiddler抓包工具,发现前面都会有小图标显示,不同的图标代表了不同的含义,通过查询,整理如下:  请求发送到服务器  从服务器下载响应结果  请求在断点处被暂停  响应在断点处被暂停  请 ...

  4. 5.Fiddler模拟弱网限速方法

    原理:Fiddler的模拟限速是在客户端请求前来自定义限速的逻辑,此逻辑是通过延迟发送数据或接收的数据的时间来限制网络的下载速度和上传速度,从而达到限速的效果. 算法:那么我们的算法就是 1000/下 ...

  5. 详解Makefile 函数的语法与使用 (转)

    使用函数: 在Makefile中可以使用函数来处理变量,从而让我们的命令或是规则更为的灵活和具有智能.make所支持的函数也不算很多,不过已经足够我们的操作了.函数调用后,函数的返回值可以当做变量来使 ...

  6. 本地Debug Asp.net MVC 无法加载css与js

    运行一个从网上download的一个MVC项目,运行的时候无法显示样式,js也报错. 检查路径也没有问题,后来在配置中把其中的一段配置去掉 <staticContent> <!-- ...

  7. alpha冲刺(4/10)

    前言 队名:旅法师 作业链接 队长博客 燃尽图 会议 会议照片 会议内容 陈晓彬(组长) 今日进展: 召开会议 安排任务 博客撰写 问题困扰: pm和程序猿的交流到底应该怎么样呢,会出现,不做安排的任 ...

  8. goaccess geoip 测试

      goaccess 是一个很不错的日志实时统计分析工具,我们可以用来方便的分析nginx apcahe iis 等的日志信息 对于geoip 的支持是需要源码编译的,所以基于官方docker 镜像添 ...

  9. visio画图有感

    昨天在和一个同事看流程图,在我还在考虑图的含义时他说这个图太乱了,如果要团队成员看也会很费劲,并找出觉得画的好的案例. 对比两个图我发现了一个最大的差别是好的图形状都是水平或垂直对齐的,连接线也都是水 ...

  10. 1.1.20 Word不能保存问题

    1.进入如下目录:C:\用户(user)\Administrator\AppData\Roaming\Microsoft\Templates 2.找到Normal和NormalOld的两个文件,删除. ...