python list

python 列表 用[]方括号来创建,用,逗号来分隔多个元素

1. python 创建列表

1
2
3
4
5
a_list = [1,2,'a',3.14]
b_list = [ [1,2,3], ['a','b','c'] ]
list_from_collection = list('Hello')

2. 二维列表

1
2
3
4
5
6
7
8
9
10
list_of_lists = [ [1,3,5], ['x','a','n'], [2,'b',3.5] ]
>>> list_of_lists[1]
['x','a','n']
>>> list_of_lists[1][2]
'n'
>>> list_of_lists[0][-1]
5

3. 作用于 列表的 函数

1
2
3
4
5
6
7
len(c) # 返回集合 c 的长度
min(c) # 返回集合 c 中 的最小元素
max(c) # 返回集合 c 中 的最大元素
# 如果是列表的列表,则只考虑每个列表中的第一个元素
sum(L) # 返回列表 L 中 所有元素总和,元素必须为数字

4. 列表循环

1
2
3
my_list = [ 1, 3, 4, 8 ]
for n in my_list:
print n,

5. 列表可变性

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
>>> a = [1,2,3,4]
>>> print a
[1, 2, 3, 4]
# 改变 单个 元素
>>> a[2] = 10
>>> print a
[1, 2, 10, 4]
# 改变 多个 元素
>>> a[2:] = [7,8]
>>> print a
[1, 2, 7, 8]
# 改变 全部 元素
>>> a[:] = 'abcd'
>>> print a
['a', 'b', 'c', 'd']

6. 列表方法

6.1. 不修改列表的方法

1
2
3
index(a) 返回列表中与 a 相等的第一个元素的索引,如果没找到元素,将报错
count(a) 返回列表中 a 出现的次数,如果列表中不包含 a,返回0

6.2. 修改列表的方法

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
append(a) 在列表末尾添加元素,列表的长度增加1
pop() 删除列表末尾的元素,并返回此元素,列表长度减1
pop(an_index) 删除指定索引值元素
extend(c) 需要一个集合作为参数,将参数中的每个元素添加到列表的末尾
insert(i, x) 在指定位置插入元素
remove(x) 删除列表中第一个值为 x 的元素,如果没有,将出错
sort() 将列表中元素进行排序,如果对列表中的列表排序,只考虑每个列表的首个元素
reverse() 将列表中的元素反向排列

7. range、split 多重赋值

1
2
3
4
5
6
7
>>> a, b, c = range(3)
>>> print a, b, c
0 1 2
>>> a, b, c = '1 2 3'.split()
>>> print a, b, c
1 2 3

8. join 列表 切换成 字符串

1
2
' '.join(['a','b','c'])
# 以空格为分割,连接所有字符,生成'a b c'

9. sorted 函数

1
2
3
4
5
6
7
>>> my_list = [27,56,4,18]
>>> sorted(my_list)
[4,18,27,56]
>>> my_str = 'Hi mon'
>>> sorted(my_str)
[' ','H','i','m','m','o']