如何使用 format() 将嵌套列表打印为 table?
How can I use format() to print out nested lists as a table?
如何使用 format() 打印出与预期输出类似的 table?我试过但出现错误:
unsupported format string passed to list.__format__
data = [[1, [1, 2, 3, 4, 5], [1, 2, 3, 4, 5]],
[2, [1, 2, -999, 4, 5], [1, 2, 3.0, 4, 5]]]
print ("{:<10} {:<20} {:<20}".format('Test Case','Original','Clean-Up'))
for item in data:
testcase, original, clean = item
print ("{:<10} {:<50} {:<50}".format(testcase, original, clean))
预期输出:
test case original clean-up
1 1, 2, 3, 4, 5 1, 2, 3, 4, 5
2 1, 2, -999, 4, 5 1, 2, 3.0, 4, 5
试试这个:
for item in data:
testcase, original, clean = item
print ("{:<10} {:<20} {:<10}".format(testcase, ', '.join(str(i) for i in original), ', '.join(str(i) for i in clean)))
输出:
Test Case Original Clean-Up
1 1, 2, 3, 4, 5 1, 2, 3, 4, 5
2 1, 2, -999, 4, 5 1, 2, 3.0, 4, 5
尝试使用此代码:
for item in data:
testcase, original, clean = item
print ("{:<10} {:<20} {:<10}".format(testcase, ', '.join(map(str, original)), ', '.join(map(str, clean))))
输出:
Test Case Original Clean-Up
1 1, 2, 3, 4, 5 1, 2, 3, 4, 5
2 1, 2, -999, 4, 5 1, 2, 3.0, 4, 5
我使用了 str.join
和 map
来使代码工作。
如何使用 format() 打印出与预期输出类似的 table?我试过但出现错误:
unsupported format string passed to list.__format__
data = [[1, [1, 2, 3, 4, 5], [1, 2, 3, 4, 5]],
[2, [1, 2, -999, 4, 5], [1, 2, 3.0, 4, 5]]]
print ("{:<10} {:<20} {:<20}".format('Test Case','Original','Clean-Up'))
for item in data:
testcase, original, clean = item
print ("{:<10} {:<50} {:<50}".format(testcase, original, clean))
预期输出:
test case original clean-up
1 1, 2, 3, 4, 5 1, 2, 3, 4, 5
2 1, 2, -999, 4, 5 1, 2, 3.0, 4, 5
试试这个:
for item in data:
testcase, original, clean = item
print ("{:<10} {:<20} {:<10}".format(testcase, ', '.join(str(i) for i in original), ', '.join(str(i) for i in clean)))
输出:
Test Case Original Clean-Up
1 1, 2, 3, 4, 5 1, 2, 3, 4, 5
2 1, 2, -999, 4, 5 1, 2, 3.0, 4, 5
尝试使用此代码:
for item in data:
testcase, original, clean = item
print ("{:<10} {:<20} {:<10}".format(testcase, ', '.join(map(str, original)), ', '.join(map(str, clean))))
输出:
Test Case Original Clean-Up
1 1, 2, 3, 4, 5 1, 2, 3, 4, 5
2 1, 2, -999, 4, 5 1, 2, 3.0, 4, 5
我使用了 str.join
和 map
来使代码工作。