创建一个m行,n列的二维列表:
dp = [[0]*n for _ in range(m)]
运行结果(n = 3, m = 4):
[[0, 0, 0], [0, 0, 0], [0, 0, 0], [0, 0, 0]]
注1:单下划线 _ 的含义
- 用作临时的变量名称 (此处的用法)
- Python REPL中的一个特殊变量,它表示由解释器评估的最近一个表达式的结果。
- 举例:
>>> 27 27 >>> _ 27 >>> _+5 32 >>> _ 32 >>> {1:'a', 2:'b'} {1: 'a', 2: 'b'} >>> _ {1: 'a', 2: 'b'} >>> _[3] = 'c' >>> _ {1: 'a', 2: 'b', 3: 'c'}
- 举例:
- 无意义的变量名称
- 举例:
car = ('red', 'auto', 12, 3812.4) >>> color, _, _, mileage = car
此时我只需要car的颜色和里程。故另外两项可以用_代替
- 举例:
参考: https://www.runoob.com/w3cnote/python-5-underline.html
注2:还有一种创建二维列表的方法:
dp = [[0]*3]*4
运行结果一致,不过这种方法用的是列表的引用,也就是在赋值的时候会出现以下问题
>>> dp[0][1] = 1
>>> dp
[[0, 1, 0], [0, 1, 0], [0, 1, 0], [0, 1, 0]]