一、随机排序
a=[1,2,3,4,5,6,7,8] import random x=a[:] random.shuffle(x) print x
二、deepcopy的使用
import copy x=[1,2,3,4] y=x y.append(5) print x print y z=copy.deepcopy(x) z.append(6) print x print y print z
[1, 2, 3, 4, 5]
[1, 2, 3, 4, 5]
[1, 2, 3, 4, 5]
[1, 2, 3, 4, 5]
[1, 2, 3, 4, 5, 6]
可以看出深拷贝不会改变原list中的值
三、快速获取小于limit这个数的素数
limit = 2000000 arr = [True] * limit def sieve(x): global arr,limit for i in range(x*2,limit,x): arr[i] = False map(sieve, range(2,limit**1/2)) primes = [] for i in range(2,limit): if arr[i]: primes.append(i) sum = 0 for p in primes: sum += p print sum
四、zip的使用,变成字典
a=[[1,2,3,4],[5,6,7,8],[1,1,1,1],[2,2,2,2]] b=[1,2,3,4] c=zip(a,b)
五、还原zip数据
a=[[1,2,3,4],[5,6,7,8],[1,1,1,1],[2,2,2,2]] b=[1,2,3,4] c=zip(a,b) import random random.shuffle(c) d=map(list,zip(*c))
1. 列表可包含任何数据类型的元素,单个列表中的元素无须全为同一类型。
2. append() 方法向列表的尾部添加一个新的元素。只接受一个参数。
3. extend()方法只接受一个列表作为参数,并将该参数的每个元素都添加到原有的列表中。
append()用法示例:
>>> mylist = [1,2,0,'abc']
>>> mylist
[1, 2, 0, 'abc']
>>> mylist.append(4)
>>> mylist
[1, 2, 0, 'abc', 4]
>>> mylist.append('haha')
>>> mylist
[1, 2, 0, 'abc', 4, 'haha']
>>>
extend()用法示例:
>>> mylist
[1, 2, 0, 'abc', 4, 'haha']
>>> mylist.extend(['lulu'])
>>> mylist
[1, 2, 0, 'abc', 4, 'haha', 'lulu']
>>> mylist.extend([aaa,'lalalala'])
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'aaa' is not defined
>>> mylist.extend(['123123','lalalala'])
>>> mylist
[1, 2, 0, 'abc', 4, 'haha', 'lulu', '123123', 'lalalala']
>>> mylist.extend([111111,222])
>>> mylist
[1, 2, 0, 'abc', 4, 'haha', 'lulu', '123123', 'lalalala', 111111, 222]
>>>
OVER!