2015-11-04 97 views
-1

我想創建一個有100個單元格(蛇部分或長度)的可能性的蛇遊戲。在主while循環的每次迭代中,每個單元格位置都佔據它前面的位置。當我嘗試這樣做時,它會返回:蟒蛇蛇遊戲單元位置與列表

cellPosX[100 - x] = cellPosX[100 - (x + 1)] 
IndexError: list index out of range 

這是我的代碼,我並不認爲所有的代碼都是必需的。

cellPosX = [100] 
cellPosY = [100] 
cellPosX[0] = 400 
cellPosY[0] = 300 

#Change Cell Positions 
for x in range(0, 100): 
    cellPosX[100 - x] = cellPosX[100 - (x + 1)] 
    cellPosY[100 - x] = cellPosY[100 - (x + 1)] 

我只是一個初學者在python編程,我還沒有習慣它呢。任何幫助將不勝感激。

+0

你是否正在初始化列表? – Netwave

+0

咦?不完全確定,我對列表所做的所有工作都是在這裏做的,你如何建議我這樣做。對不起,如果我的錯誤是愚蠢的。 –

+0

順便說一句,如果你從零開始,'範圍(100)'會做。並更好地定義一個常量'BOARDSIZE = 100' ... – Pynchia

回答

2

你只是初始化它們與單一項目的列表: 更好的初始化整個100個位置:

cellposX = [100]  # is a list with only one '100' inside 
cellposX = [100]*100 # is a list with 100 '100' inside 

無論如何,你試圖實現這種方式是不正確的人做這樣的我的想法。 查看Snake Pygame Example上的代碼進行學習。

+0

謝謝,我不知道「* 100」的事情。 –