这段代码如何生成网格?

时间:2017-04-14 01:49:56

标签: python-3.x grid-layout

我正在关注面向对象编程的教程。类矩阵定义如下:

class Matrix():

def __init__(self, rows, columns, default_character='@'):
    self.rows = rows
    self.columns = columns
    self.default_character = default_character

    self.grid = [[default_character] * columns for _ in range(rows)]

def print_matrix(self):
    for row in self.grid:
        print(''.join(row))

问题是我完全不了解以下内容 线路工作:

self.grid = [[default_character] * columns for _ in range(rows)]

1 个答案:

答案 0 :(得分:0)

这是一个列表理解,它只是创建列表的简洁方法。可以使用以下命令创建相同的列表:

    self.grid = []
    for _ in range(rows):
        self.grid.append([default_character] * columns)