1. tile函数:扩充数组。
eg:a=(1,2,3)
>>> print a
(1, 2, 3)
>>> tile(a,(3,1))
array([[1, 2, 3],
[1, 2, 3],
[1, 2, 3]])
2. sum函数:axis=1,按行求和。
eg:sum(tile(a,(3,1)),axis=1)
array([6, 6, 6])
3. xrange(),range()
xrange()返回一个对象,range()返回一个list。
eg:>>> range(5)
[0, 1, 2, 3, 4]
>>> xrange(5)
xrange(5)
>>> list(xrange(5))
[0, 1, 2, 3, 4]
4. sort(),sorted()和argsort()
sort()排序对数组有影响,sorted()没影响
eg:>>> a
[1, 3, 5, 2, 1]
>>> a.sort()
>>> a
[1, 1, 2, 3, 5]
>>> sorted(a)
[1, 1, 2, 3, 5]
>>> print a
[1, 3, 5, 2, 1]
argsort()返回的是排序的索引
a=[1,3,5,2,1]
>>> a
[1, 3, 5, 2, 1]
>>> argsort(a)
array([0, 4, 3, 1, 2], dtype=int64)
5. 字典get()
Python 字典(Dictionary) get() 函数返回指定键的值,如果值不在字典中返回默认值。
eg:cl={0: 1, 2: 2, 4: 6}
>>> cl[4]=cl.get(4,0)+1
>>> cl
{0: 1, 2: 2, 4: 7}
>>> cl[4]=cl.get(4,0)+1
>>> cl
{0: 1, 2: 2, 4: 8}
6. 字典中的item()和iteritems()
item()返回的是列表,iteritems()返回的是迭代器
cl.items()
[(0, 1), (2, 2), (4, 8)]
>>> f=cl.iteritems()
>>> type(f)
<type 'dictionary-itemiterator'>
>>> list(f)
[(0, 1), (2, 2), (4, 8)]
7. 字典排序
cls=sorted(cl.iteritems(),key=operator.itemgetter(1))
>>> cls
[(0, 1), (2, 2), (4, 8)]
>>> cls=sorted(cl.iteritems(),key=operator.itemgetter(1),reverse=True)
>>> cls
[(4, 8), (2, 2), (0, 1)]
采用lambda方式
cls=sorted(cl.iteritems(),key=lambda cl:cl[1])
>>> cls
[(0, 1), (2, 2), (4, 8)]
>>> cls=sorted(cl.iteritems(),key=lambda cl:cl[1],reverse=True)
>>> cls
[(4, 8), (2, 2), (0, 1)]