我试图创建一个可以根据一个数字动态变化的2D数组/列表,所以说我输入数字3,它将创建一个具有三行三列的二维数组。输入10将创建一个包含10列和10行等的数组。
char c = (char)((int)'A' + i - 1);
我对google和堆栈溢出都进行了相当多的研究,但都没有发现对我有很大帮助的结果。
我目前拥有的一个函数带有一个参数(numberOfCells),并使用for循环尝试填充数组,它返回array = [
[0, 0, 0]
[0, 0, 0]
[0, 0, 0]
]
,所以我愿意提出以其他方式实现此目标的建议
下面的两段代码都将使用此类创建新的单元格
TypeError: 'int' object is not iterable
class Cell:
def __init__(self, id):
self.infected = False
self.dead = False
self.id = id
def printId(self):
print(self.id)
(上面)此代码返回错误,所以我不知道这是否是正确的方法。
(如下)这种代码可以正常工作,但不会产生我想要的结果
def createTestingEnv(numberOfCells):
# creates a simulated cell tissue
row = list(range(numberOfCells + 1)) # +1 because range uses < not <=
column = numberOfCells
env = [[]]
for i in range(numberOfCells):
for j in range(numberOfCells):
env.append(list(i))
# env = list([row] * column) # create a 2D array/list based on number of cells
print(env)
createTestingEnv(3)
我是python的新手,我应该做些不同的事情吗? 还是我对此采取了完全错误的方法?如果是这样,我应该怎么做?
谢谢,Asher
答案 0 :(得分:2)
如果数组需要用0填充,这应该可以工作:
last_chapter_date
答案 1 :(得分:1)
尝试
def make_array(n):
return [ [0]*n for i in range(n)]