我如何在一个有两个元组元素的元组上循环,并打印一个格式化良好的元组元素相乘的字符串结果



我正在努力让输出打印得更好,这样它更可读。这就是我目前所拥有的:

a = (4,4)
b = (25,75)
c = (8,9)
d = (88,4)
elements = [(a[0]*a[1], "= 4 x 4"), 
(b[0]*b[1], "= 25 x 75"),
(c[0]*c[1], "= 8 x 9"),
(d[0]*d[1], "= 88 x 4")]
fmt = "{0:>4}" # Something along these lines, not specific
for i in elements:
    print(fmt.format(i)) 

这是我得到的输出:

(16,'=4x4')
(1875年,'=25 x 75')
(72,'=8 x 9')
(352,'=88 x 4')

我知道我的"元素"元组很草率,但这是迄今为止我能想到的最好的!我希望尝试格式化我的输出,使其美观易读,如下所示:

  16 =  4 x  4
1875 =  25 x  75
  72 = 8 x 9
 352 =  88 x  4

谢谢你的帮助。

inp = [(4,4), (25,75), (8,9), (88,4)]
for eq in inp:
  print('{:>4} = {:>2} × {:>2}'.format(eq[0] * eq[1], eq[0], eq[1]))

怎么样:

inp = [(4,4), (25,75), (8,9), (88,4)]
print 'n'.join(['{:>4} = {:>2} × {:>2}'.format(x, y, x * y) for x, y in inp])

如果它要成为函数的一部分,应该会更快、更方便。

最新更新