【发布时间】:2019-12-06 21:39:41
【问题描述】:
如果标题有任何误导性,我深表歉意。我目前的程序遇到问题。我的第一个函数将字符串作为输入并将其转换为元组。我的第二个函数旨在修改和打印元组,例如具有固定宽度字段的表格,这就是我遇到麻烦的地方。这是我尝试过的:
string = 'abc acb bac bca 100000'
def function_one(string):
modify_one = string.split(' ')
my_tuple = (modify_one[3], modify_one[2],
modify_one[4], modify_one[1], modify_one[0])
print(my_tuple)
def function_two(my_tuple):
print(my_tuple)
formatted = u'{:<15} {:<15} {:<8} {:<5} {:<5}'.format(my_tuple[3], '|', my_tuple[2], '|', my_tuple[4], '|', my_tuple[1], '|', my_tuple[0])
print(formatted)
function_two(my_tuple)
function_one(string)
我的输出(仅打印 5 个中的 3 个):
('bca', 'bac', '100000', 'acb', 'abc')
('bca', 'bac', '100000', 'acb', 'abc')
acb | 100000 | abc
重要!
我知道只有一个字符串不能看起来像一张桌子。最初我被要求在程序中插入一个文本文件,到目前为止我还没有弄清楚该怎么做。我使用单个字符串只是为了确保函数正常工作。
【问题讨论】:
-
您的格式参数包含分隔符,但格式字符串中的格式说明符不足。
-
单个字符串绝对可以看起来像一张表格;您可以在字符串中嵌入换行符。
-
你的意思可能是
'{:<15} | {:<15} | {:<8} | {:<5} | {:<5}'.format(my_tuple[3], my_tuple[2], my_tuple[4], my_tuple[1], my_tuple[0]) -
@Jean-FrançoisFabre 如此简单却如此高效。我不知道它是这样做的。非常感谢。
标签: python string function tuples