python 列表 list的基本操作
一,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() 方法可以把一个元素从堆栈顶释放出来。例如:
[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 子 句上下文计算而来的结果构成。
例如,如下的列表推导式结合两个列表的元素,如果元素之间不相等的话:
等同于:
>>> 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的基本操作的更多相关文章
- python列表元素的基本操作
1.列表元素的增加 python提供三种方法增加元素,append,extend,insert. 区别:例 list3=[1,10,100,1000,10000] A. list3.append ...
- [转载] Python 列表(list)、字典(dict)、字符串(string)常用基本操作小结
创建列表 sample_list = ['a',1,('a','b')] Python 列表操作 sample_list = ['a','b',0,1,3] 得到列表中的某一个值 value_star ...
- Python 列表(list)、字典(dict)、字符串(string)常用基本操作小结
创建列表 sample_list = ['a',1,('a','b')] Python 列表操作 sample_list = ['a','b',0,1,3] 得到列表中的某一个值 value_star ...
- 转:Python 列表(list)、字典(dict)、字符串(string)常用基本操作小结
转自:http://blog.csdn.net/business122/article/details/7536991 创建列表 sample_list = ['a',1,('a','b')] Pyt ...
- python列表基础操作
Python列表基本操作 记住一句话,叫做顾首不顾尾 首先我们来定义一个列表 name = ["jixuege","dajiba","boduoye& ...
- Python—列表(一个“打了激素”的数组)
我们在C语言中会使用数组来将一大堆数据类型一样的数据挨个摆在一起,但是数组有一个基本的要求,就是数据类型必须是一致的,我们知道Python的变量由于没有数据类型,也就是说Python没有数组这一概念, ...
- Python 学习笔记(八)Python列表(一)
列表基本操作 列表(list)定义 列表是Python中的一种对象类型,也是一种序列 对象类型:list 表示方法:[ ] python 列表中的元素可以是任何类型的对象 >>> ...
- (转)python 列表与元组的操作简介
python 列表与元组的操作简介 原文:https://www.cnblogs.com/QG-whz/p/4782809.html 阅读目录 列表 list函数 列表的基本操作 列表方法 元组 tu ...
- python学习9—文件基本操作与高级操作
python学习9—文件基本操作与高级操作 1. 文件基本操作 打开文件,获得文件句柄:f = open('filename',encoding='utf-8'),open会查询操作系统的编码方式,并 ...
随机推荐
- 1) 嵌套的 div ,或者 ul ol .li 阻止冒泡 ,特别是 对应onclick="test(event)" 通过传递event 阻止 冒泡. cancelBubble , stopPropagation
1 .html 结构: <ul class="ul_2 hide" data-first="5"> <li class="li_2& ...
- C/C++ 宏技巧
1. C 也可以模板化 #define DEFINE_ARRAY_TYPE(array_type_, element_type_) \ static inline int array_type_ ## ...
- 使用selenium爬取网站动态数据
处理页面动态加载的爬取 selenium selenium是python的一个第三方库,可以实现让浏览器完成自动化的操作,比如说点击按钮拖动滚轮等 环境搭建: 安装:pip install selen ...
- Cortex-M3的一些概念
[工作模式] 线程模式(Thread mode):处理器复位或异常退出时为此模式.此模式下的代码可以是特权代码也可以是用户代码,通过CONTROL[0]控制.处理模式(Handler mode):出现 ...
- python学习之路05
控制流语句 博主认为所有的语言中,控制语句都是差不多的,无非就是循环,判断,if ,while,for.更重要的是,多加的练习,实战中发现自身问题,加深巩固 所以,下面会以实际的题目为主. 1.用户在 ...
- linux shell 指令搜索顺序
在linux shell 中输入一个命令,如果有多个同名指令,shell需要按照一定规则去取优先级高的一个执行,shell命令的搜索顺序为: 1.别名,使用alias创建的命令. 2.关键字,如if, ...
- Arch Linux 的AUR用户软件仓库
==== Arch 官方软件仓库, 共10998个(20190325), 使用pacman搜索安装. https://www.archlinux.org/packages/ Core 核心软件包, 2 ...
- move UVs of a texture
Go to the material options on the left, and use a Custom UV. Create a vector parameter, use it to sc ...
- hsdfz -- 6.17 -- day2
今日依旧康复…… 当天晚上被老师拉去小吃街了,晚上回来精力憔悴,所以并没有当天写 反正就惨,因为估错复杂度,期望得分100分最后结果20分 (我的复杂度是nlog^2n的,正确性有保障,稳! 事后:还 ...
- immutable.js使用总结
1. immutable相当于 JSON.parse 和 JSON.stringify: 2.引入redux中,除了 在最外层 reducer中 import { combineReducers } ...