我正在开始python,我正在尝试使用二维列表,我最初在每个地方填充相同的变量.我想出了这个:
def initialize_twodlist(foo):
twod_list = []
new = []
for i in range (0, 10):
for j in range (0, 10):
new.append(foo)
twod_list.append(new)
new = []
Run Code Online (Sandbox Code Playgroud)
它给出了期望的结果,但感觉就像一个解决方法.有没有更简单/更短/更优雅的方式来做到这一点?
我创建了一个6x5 2d阵列,最初在每个单元格中只有None.然后,当我读取它时,我读取了一个文件并用数据替换了Nones.我首先创建空数组,因为我正在读取的文件中的数据是未定义的顺序.我第一次尝试这样做:
x = [[None]*5]*6
Run Code Online (Sandbox Code Playgroud)
这导致了一些我现在理解的奇怪错误,因为列表上的*运算符可能会创建引用而不是副本.
是否有一个简单的衬垫来创建这个空阵列?我可以做一些for循环并构建它,但对于python来说这似乎是不必要的冗长.