2013-06-02 102 views
0

我試圖打印出對應於名稱列表的圖像。通過使用循環更改圖像和圖像位置[python]

我有下面的代碼已經:

for item in player_hand: 
    screen.blit(pygame.image.load(os.path.join('Images',item.name+'.png')), (100, 100)) 

我想更新的元組(100,100),使每個新的圖像被打印到一張圖像的右側。

完成此操作的最簡單方法是什麼?

+0

如果您在blit時加載圖像,速度會變慢。在循環到列表/字典之前加載您的圖像。 – ninMonkey

回答

1

使用enumerate向循環中引入增加的變量。比如

for n, item in enumerate(player_hand): 
    screen.blit(pygame.image.load(os.path.join('Images',item.name+'.png')), (100+n*10, 100)) 
+1

這是完美的。當我學到新的東西時就喜歡它。謝謝@ 0sh – bhamhawker

0

是這樣的?

count=0 
for item in player_hand: 
    screen.blit(pygame.image.load(os.path.join('Images',item.name+'.png')), (100+count, 100)) 
    count=count+distance 

這裏距離是多少你右邊需要

這種方式是最好的,因爲你可以改變多少通過增加一個陣列的值的每個循環重複一次移動圖像! (例如:如果您需要不同的距離或具有不同大小的圖案)