目录
assert
assert condition
检查condition是不是成立,若判断出condition为false,则raise一个AssertionError出来
enumerate
for idx, x in enumerate(squeeze, [start=0])
在for循环中列举出数组序列中的元素同时给出其索引号,start给出从哪个数开始索引
zip
zip() 函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回这些元组组成的列表。
如果各个迭代器的元素个数不一致,则返回列表长度与最短的对象相同,利用*号操作符,可以将元组解压为列表。
>>> a = [1,2,3]
>>> b = [4,5,6]
>>> c = [4,5,6,7,8]
>>> zipped = zip(a,b) #打包为元组的列表
[(1,4), (2,5), (3,6)]
>>> zip(a,c) #元素个数与最短的列表一致
[(1,4), (2,5), (3,6)]
>>> zip(*zipped) # 与zip相反, *zipped可理解为解压,返回二维矩阵式
[(1,2,3), (4,5,6)]
np.unique(a)
查看array a中的不重复的值
set()
查看list中不重复的元素
a.values()
查看字典a中所有的值,忽略key值
lambda
匿名函数
add = lambda x,y : x+y
add(1,2) #结果为3
dict排序
A={'a':3,'b':2,'c':5}
sorted(A.items(), key=lambda v:v[1]) # v[1]根据values排序
Out: [('b', 2), ('a', 3), ('c', 5)]
sorted(A.items(), key=lambda v:v[0]) #v[0]根据key排序
Out: [('a', 3), ('b', 2), ('c', 5)]
dict中嵌套dict排序
A = {1:{'a':2,'b':'bbb'},2:{'a':1,'b':'ccc'},3:{'a':3,'b':'ddd'}}
sorted(A.items(), key=lambda x:x[1]['a'])
Out:
[(2, {'a': 1, 'b': 'ccc'}),
(1, {'a': 2, 'b': 'bbb'}),
(3, {'a': 3, 'b': 'ddd'})]
items
Python 字典(Dictionary) items() 函数以列表返回可遍历的(键, 值) 元组数组。
s.strip(rm)
删除 s 字符串中开头、结尾处的 rm 序列的字符。 当rm为空时,默认删除空白符(包括'\n', '\r', '\t', ' ')
eval()
eval() 函数用来执行一个字符串表达式,并返回表达式的值。
getattr()
getattr() 函数用于返回一个对象属性值。
numel()
返回数组中元素的个数
创建软链接
ln -s source symbol
np.vstack 和 np.hstack
vstack是水平堆叠,hstack是垂直堆叠
getitem
如果在类中定义了__getitem__()方法,那么他的实例对象(假设为P)就可以这样P[key]取值。当实例对象做P[key]运算时,就会调用类中的__getitem__()方法。
and or not的优先级
or < and < not
np.cumsum()
np.cumsum(a, axis=None, dtype=None, out=None)
axis=0, 按照行累加
axis=1, 按照列累加
axis不给具体值,就把numpy数组当成一个一维数组。
locals()
会以字典类型返回当前位置的全部局部变量。
对于函数, 方法, lambda 函式, 类, 以及实现了 __call__ 方法的类实例, 它都返回 True。
np.where()
np.where(condition, x, y) 满足条件输出x,不满足条件输出y
np.where(condition) 输出满足条件的元素的坐标,以tuple的形式给出,通常原数组有多少维,接回给出多少的tuple,每个tuple中相应位置对应符合条件元素相应维度的坐标,如: