python 嵌套循环中的漂亮打印输出
Pretty print output in nested loop in python
我有一个像这样的嵌套循环:
for a in b.keys():
for c in b[a]:
out = '%-30s %s' % (c, a)
space = out.count(' ')
split = space * '-'
print '\t%-30s %s %-10s' % (c, split, a)
所以结果是:
test1 ------- something1
test23sdfsf ----- dsffdgdgfddfsdf
但我想要的是:
test1 -------------- something1
test23sdfsf -------- dsffdgdgfddfsdf
如何使用以下内容:
Test: {0:15} Something {1}".format(Variable,AnotherVar)
您可以根据长度计算数字。
添加更多示例:
>>> a="test"
>>> b="another_one"
>>> "A: {0:20} B {1}".format(a,b) 'A: test B another_one'
>>> "A: {0:15} B {1}".format(a,b) 'A: test B another_one'
>>> "A: {0:4} B {1}".format(a,b) 'A: test B another_one'
您还可以根据要打印的字符串长度为第一个 {} 中的第二个数字使用变量。
您可以在 nested arguments and complex examples
中看到我的解决方案的相同示例
for a in b.keys():
for c in b[a]:
print '{key:{fill}{align}20} {item}'.format(key=key + ' ', fill='-', align='<', item=b[key])
如果您想使用 30
的最大宽度,请执行以下操作:
for a in b.keys():
for c in b[a]:
print("%s %s" % (c.ljust(30, '-'), a))
我有一个像这样的嵌套循环:
for a in b.keys():
for c in b[a]:
out = '%-30s %s' % (c, a)
space = out.count(' ')
split = space * '-'
print '\t%-30s %s %-10s' % (c, split, a)
所以结果是:
test1 ------- something1
test23sdfsf ----- dsffdgdgfddfsdf
但我想要的是:
test1 -------------- something1
test23sdfsf -------- dsffdgdgfddfsdf
如何使用以下内容:
Test: {0:15} Something {1}".format(Variable,AnotherVar)
您可以根据长度计算数字。
添加更多示例:
>>> a="test"
>>> b="another_one"
>>> "A: {0:20} B {1}".format(a,b) 'A: test B another_one'
>>> "A: {0:15} B {1}".format(a,b) 'A: test B another_one'
>>> "A: {0:4} B {1}".format(a,b) 'A: test B another_one'
您还可以根据要打印的字符串长度为第一个 {} 中的第二个数字使用变量。
您可以在 nested arguments and complex examples
中看到我的解决方案的相同示例for a in b.keys():
for c in b[a]:
print '{key:{fill}{align}20} {item}'.format(key=key + ' ', fill='-', align='<', item=b[key])
如果您想使用 30
的最大宽度,请执行以下操作:
for a in b.keys():
for c in b[a]:
print("%s %s" % (c.ljust(30, '-'), a))