二维数组初始化
网上有很多错误例子:
m = n = 3
test = [[0] * m] * n
print("test =", test)
打印结果很美好
test = [[0, 0, 0], [0, 0, 0], [0, 0, 0]]
实际上使用的时候
m = n = 3
test = [[0] * m] * n
print("test =", test)
test[0][0] = 233
print("test =", test)
结果是
test = [[0, 0, 0], [0, 0, 0], [0, 0, 0]]
test = [[233, 0, 0], [233, 0, 0], [233, 0, 0]]
惊讶了吧?
内容搬抄 PyLearn。
建议使用方法如下:
test = [[0 for i in range(m)] for j in range(n)]
帅气美好,无异常。
sorted排序
当有负数的时候,你就知道了怎么都排序不对
这个时候嘛
sorted(tmpList,key=lambda x:(int(x[9])+10),reverse=True)
比较的项,加个大正数使得变成正数即可。
今日到此为止。
以后再补充吧。