【问题标题】:Replacing items in a list with predetermined values用预定值替换列表中的项目
【发布时间】:2016-02-02 04:37:26
【问题描述】:

假设我正在使用 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

如何打印此列表,以便将变量显示为字符串,以便更完整地查看地图?

【问题讨论】:

    标签: python-2.7


    【解决方案1】:

    如果您可以将名称存储在数组中,则可以通过列表推导使其变得非常简单;

    > 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']]
    

    【讨论】:

      猜你喜欢
      • 2019-12-02
      • 2022-07-18
      • 2012-11-11
      • 2021-03-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-12-24
      相关资源
      最近更新 更多