Python 学习小记
感觉学python的过程还是比较痛苦的...现在在借助Competitive Programming in Python 这本书来学一些好用的用法
所以会类比一些C++中的用法来记录
初始化一个数组(类似于int a[], memset())ans = [0 for _ in range(n)]
这样就不会越界了
python里没有自增运算
map 可以用:
from collections import Counter
c = Counter()
c['a'] += 1
关于lambda表达式:
c = lambda x,y,z:x+y+z
c(2,3,4) # =9
或者:
res = map(lambda x:x*x, [y for y in range(1, 5)])
print(list(res)) # 注意第二次调用就成空集了
或者:
res = [('a', 2), ('c', 10), ('b', 12), ('d', 14)]
res = sorted(res, key = lambda x:x[0]) # [('a', 2), ('b', 12), ('c', 10), ('d', 14)]
tile(dataSet,[3,2])
其中 dataSet 是一个 numpy.array
型的矩阵,这个表示将 dataSet 复制成一个 \(3\times 2\) 的新的大矩阵
给一个 numpy.array
型的矩阵,可以用 shape()
获取大小,其中 .shape[0]
表示长,.shape[1]
表示宽。可以用 sum()
求和,.sum(axis=0)
表示对每一行求和,.sum(axis=1)
表示对每一列求和