使用Python中第二个列表中的多个对象实例创建单个列表

Ste*_*fan 5 python list-comprehension

我正在尝试从xml文件构建一个棋盘游戏列表,其中包含对棋子的描述.xml文件描述了每种磁贴类型以及该类型的磁贴数.

到目前为止,我已经得到了以下代码,它创建了一个列表,其中包含每个tile类型中的一个:

    [Tile(el.id) for el in <tile descriptions>]
Run Code Online (Sandbox Code Playgroud)

我想创建一个包含每个tile的适当数量的列表,例如:

    [Tile(el.id) * <el.n_tiles> for el in <tile descriptions>]
Run Code Online (Sandbox Code Playgroud)

有没有一个优雅的单行做这个,或者我是否需要通过为每种瓷砖类型创建一个列表然后连接来实现它?

NPE*_*NPE 3

怎么样:

[Tile(el.id) for el in <tile descriptions> for _ in range(el.n_tiles)]
Run Code Online (Sandbox Code Playgroud)