Python 3.x 在Python3.4中创建一个没有附加组件的漂亮表格

Python 3.x 在Python3.4中创建一个没有附加组件的漂亮表格,python-3.x,Python 3.x,我是个笨蛋,所以这很容易。在Python3.4中,我试图打印出格式良好的乘法表。乘法运算有效,但我似乎无法格式化它。我做错了什么 def multTable(): maximum_value = int(input("How big of a multiplication table should I make?\n")) for x in range(1, maximum_value + 1): for y in range (1, maximum_value

我是个笨蛋,所以这很容易。在Python3.4中,我试图打印出格式良好的乘法表。乘法运算有效,但我似乎无法格式化它。我做错了什么

def multTable():
    maximum_value = int(input("How big of a multiplication table should I make?\n"))
    for x in range(1, maximum_value + 1):
        for y in range (1, maximum_value + 1):
            print('{0:2d}'.format(x*y))

multTable()

问题是,当您再次调用print时,它会输出到新行。相反,你应该做的是形成乘法表的字符串,然后在最后输出整个内容。在我的示例中,我在行中使用了制表符,然后在每行开始后使用新行:

def multTable():
    maximum_value = int(input("How big of a multiplication table should I make?\n"))
    table = ''
    for x in range(1, maximum_value + 1):
        for y in range (1, maximum_value + 1):
            table = '\t'.join((table,'{0:2d}'.format(x*y)))
        table = '\n'.join((table, '\n'))
    print(table)

成功了!谢谢,你的解释对我很有意义。