[英]python, lists within list give index out of range when popped
我在列表中包含一些值,並且可以像這樣在屏幕上顯示它們:
AD QS 5S 5D 2D QD 7D
KS AH 3S KC 10D 6D 6C
5C 2C 10C 7C 4D 8H 2H
2S JH 4S 6S JC 4H JD
AS 9D 3C AC KH 8D 8C
但是,每當我調用一個函數從列表中彈出一個值,然后再次重新打印整個結構時,都會給我索引超出范圍的錯誤。 如果列表中的某個項目已經彈出,那么我希望程序打印任何可用的范圍。例如,如果彈出5個項目,彈出1個項目,剩下4個項目,我希望輸出如下所示:
AD QS 5S 5D 2D QD 7D
KS AH 3S KC 10D 6D 6C
5C 2C 10C 7C 4D 8H 2H
2S JH 4S 6S JC 4H JD
AS 9D 3C AC 8D 8C
我的代碼如下:
tableau= [[],[],[],[],[],[],[]] #each of the list have 5 values inside
col1 = tableau[0]
col2 = tableau[1]
col3 = tableau[2]
col4 = tableau[3]
col5 = tableau[4]
col6 = tableau[5]
col7 = tableau[6]
lists = [col1, col2, col3, col4, col5, col6, col7]
for y in range(0,5):
print '\n'
for x in lists:
print x[y],
#The function I call has something like this inside
tCol = 5
tableau[tCol - 1].pop()
問題是您要從list
中刪除一個條目,因此list
變小: https : //docs.python.org/3/tutorial/datastructures.html
如果您只是想舍棄該值並且以后不再使用它,則可以用一個空值覆蓋它,而不用刪除它: my_list[index] = ""
。
這是list.pop([i])
的文檔: https : list.pop([i])
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.