基础
a = [ 1, 342, 223, 'India', 'Fedora']
切片: a[0:-2] -> [1, 342, 223]
省略第一个值默认为零,省略第二个值默认为切片的字符串大小
切片操作不改变源代码
通过a[1, 3] = [5, 6]可替换原数组中某些值
a[1::2] -> 从索引1到列表末尾,每隔两个元素取值
a + [1, 2] 可获得新列表
value in a -> True/False
通过内建函数len()可以获得列表长度
列表允许嵌套
详解
a = [23, 45, 1, -3434, 43624356, 234]
a.push(value) -> 添加元素到末尾
a.insert(index, value) -> 在index处插入元素value
a.count(value) -> 返回列表中value元素数量
a.remove(value) -> 移除第一个
a.reverse() -> 反转列表
a.extend(b) -> 将列表b的元素添加到a的末尾
a.sort() -> 列表排序,前提是列表元素是可比较的
del a[index] -> 删除指定位置的元素
将列表用做栈和队列
栈
LIFO(last insert first out后进先出)
a=[1, 2, 3, 4]<br>a.pop() -> 4<br>a.append(34) -> [1, 2, 3, 34]<br>a.pop() -> 34
队列
FIFO(first insert first out先进先出)
a.pop(0) -> 传入参数i,会将第i个元素弹出
列表推导式
定义:为从序列中创建列表提供了简单的方法
变量x在循环完毕后依然存在
squares = list(map(lambda x: x**2, range(10)))
等价于: squares = [x**2 for x in range(10)]
列表推导式由包含一个表达式的中括号组成,表达式后面跟随一个 for 子句,之后可以有零或多个 for 或 if 子句。结果是一个列表,由表达式依据其后面的 for 和 if 子句上下文计算而来的结果构成。列表推导式可嵌套