我有一个绘制矩形的函数:
def drawTbl(l, w):
ln1 = ' '
ln2 = '-'
ln3 = '|'
x = range(l)
print '+', ln2*w, '+'
for i in range(len(x)):
print ln3, ln1*w, ln3
print '+', ln2*w, '+'
它工作得很好,但我正在尝试将其绘制成某种图形(这就像一个乒乓球克隆),这样我就可以在中心放置一个球'O',并使用X和Y进行碰撞检测。当我使用这个函数时:
def tblData(l, w):
table=[]
for x in range(l):
table.append([])
for y in range(w):
table.append([])
它似乎附加了空白列表,但是当我尝试使用^ {CD1>}时,我所接收的都是一个错误。你知道吗
当我从tblData
返回table
时,我得到一个空列表的列表,
但是假设(l, w)
是(12, 56)
,所以我试图把球'O'放在网格的中心(6, 28)
,只需键入table[6][28]
就会返回一个错误,所以我不知道如何将'O'附加到table[6,28]
所以我的问题是,如何有效地访问list[x][y]
?你知道吗
与创建空列表不同,您需要将内部列表中的值初始化为一些合理的值,如空格。你知道吗
例如:
或者更简洁地说:
注意,
[' '] * 3
创建列表[' ', ' ', ' ']
,因此[' '] * w
等价于[' ' for x in range(w)]
。你知道吗例如:
相关问题 更多 >
编程相关推荐