我需要在Python中创建一个列表列表,所以我输入以下内容:
myList = [[1] * 4] * 3
Run Code Online (Sandbox Code Playgroud)
列表看起来像这样:
[[1, 1, 1, 1], [1, 1, 1, 1], [1, 1, 1, 1]]
Run Code Online (Sandbox Code Playgroud)
然后我改变了最里面的一个值:
myList[0][0] = 5
Run Code Online (Sandbox Code Playgroud)
现在我的列表看起来像这样:
[[5, 1, 1, 1], [5, 1, 1, 1], [5, 1, 1, 1]]
Run Code Online (Sandbox Code Playgroud)
这不是我想要或期望的.有人可以解释一下发生了什么,以及如何解决这个问题?
我想创建一个可以容纳10个元素的空列表(或者是最好的方法).
之后我想在该列表中分配值,例如,这应该显示0到9:
s1 = list();
for i in range(0,9):
s1[i] = i
print s1
Run Code Online (Sandbox Code Playgroud)
但是,当我运行此代码时,它会生成错误,或者在另一种情况下,它只显示[](空).
有人可以解释原因吗?
如何创建list仅包含零的零件?我希望能够创造一个零list为每个int在range(10)
例如,如果int在范围内4我会得到:
[0,0,0,0]
Run Code Online (Sandbox Code Playgroud)
并为7:
[0,0,0,0,0,0,0]
Run Code Online (Sandbox Code Playgroud) 我想知道如何初始化一个数组(或列表),但要用值填充,以具有定义的大小.
例如在C中:
int x[5]; /* declared without adding elements*/
Run Code Online (Sandbox Code Playgroud)
我如何在python中做到这一点?
谢谢.
我想将值分配给不同的索引,而不是按顺序方式(通过使用append),就像我们在哈希表中所做的那样.如何初始化给定大小的数组?我所做的:
a=[]
for x in range(0,10000):
a.append(0)
Run Code Online (Sandbox Code Playgroud)
有没有更好的办法?另外,在c ++中是否有像memset()这样的函数?