我正在试验列表,并试图显示以下代码段:
----------
---hello--
----------
但要做到这一点,我需要让3'列表彼此独立。有办法吗?你知道吗
(
电流输出当然是:
---hello--
---hello--
---hello--
()
listSmall = ['-','-','-','-','-','-','-','-','-','-',]
listBig = [listSmall, listSmall, listSmall]
word = 'hello'
wordPosX = 3
wordPosY = 2
for i in word:
listBig[wordPosY][wordPosX] = i
wordPosX = wordPosX + 1
i = 0
while i != 3:
print ''.join(listBig[i])
i = i + 1
当你把
listSmall
放进listBig
时,你想复制它。您可以使用list
函数:这是因为
list
是可变的。你知道吗使
listBig
指向同一可变列表三次,因此当您通过其中一个引用更改此可变列表时,您将通过所有三个引用看到此更改。你知道吗您应该列出三个不同的列表:
根本不需要
listSmall
。你知道吗整个代码:
使用
list
构造函数生成listSmall
的浅拷贝另一种等效的(可读性较差的IMO)方法是使用空切片:
相关问题 更多 >
编程相关推荐