2016-02-02 34 views
0

比方說,我正在做瓷磚繪製出一個Python 2.7列表的,它看起來是這樣的...:更換列表中的項目與預定值

tilemap = [ 
    [0, 0, 0, 0, 0], 
    [1, 1, 1, 0, 0], 
    [2, 2, 2, 1, 0], 
    [2, 2, 1, 0, 0], 
    [2, 1, 0, 0, 0] 
] 

...我分配像這樣的變量...:

grass = 0 
dirt = 1 
water = 2 

如何打印此列表,以便將變量顯示爲字符串以給出更完整的地圖外觀?

回答

0

如果您可以將名稱存儲在數組中,則可以使用列表理解來簡化它;

> tiletype = ['grass', 'dirt', 'water'] 

> [[tiletype[x] for x in y] for y in tilemap] 

[['grass', 'grass', 'grass', 'grass', 'grass'], 
['dirt', 'dirt', 'dirt', 'grass', 'grass'], 
['water', 'water', 'water', 'dirt', 'grass'], 
['water', 'water', 'dirt', 'grass', 'grass'], 
['water', 'dirt', 'grass', 'grass', 'grass']]