Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/353.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Python中将列表格式化为表_Python_Python 3.x_List_Formatting_Format - Fatal编程技术网

如何在Python中将列表格式化为表

如何在Python中将列表格式化为表,python,python-3.x,list,formatting,format,Python,Python 3.x,List,Formatting,Format,我有两个单独的列表,我想格式化为一个表 keys = ('banana', 'broccoli', 'beans', 'apple') values = (5, 1, 1, 1) 在上面的列表中,它统计有多少水果可用。例如,有5个香蕉和1个花椰菜。请注意,水果的名称有不同的长度。最好,我不需要导入任何模块。是否有一种方法可以格式化这些列表,使其看起来像: 'Banana' | 5 'Broccoli' | 1 'Beans' | 1 'Apple' | 1 我已尝试使用此代码

我有两个单独的列表,我想格式化为一个表

keys = ('banana', 'broccoli', 'beans', 'apple')
values = (5, 1, 1, 1)
在上面的列表中,它统计有多少水果可用。例如,有5个香蕉和1个花椰菜。请注意,水果的名称有不同的长度。最好,我不需要导入任何模块。是否有一种方法可以格式化这些列表,使其看起来像:

'Banana'   | 5
'Broccoli' | 1
'Beans'    | 1
'Apple'    | 1
我已尝试使用此代码:

row_format ="{:>15}" * (len(items) + 1)
print(row_format.format("", *items))
for keys, values in zip(items, keys):
    print(row_format.format(values, *row))
谢谢你的帮助

您可以使用:

keys = ('banana', 'broccoli', 'beans', 'apple')
values = (5, 1, 1, 1)

max_length = len(max(keys, key=len))

for k, v in zip(keys, values):
    print("{: <{width}} | {}".format(repr(k).title(), v, width=max_length + 2))
width = max(len(w) for w in keys) 
print(''.join(f'{k:{width}} | {v}\n' for k, v in zip(keys, values)))

# output: 
# banana   | 5
# broccoli | 1
# beans    | 1
# apple    | 1
您可以使用:

width = max(len(w) for w in keys) 
print(''.join(f'{k:{width}} | {v}\n' for k, v in zip(keys, values)))

# output: 
# banana   | 5
# broccoli | 1
# beans    | 1
# apple    | 1

那段代码的输出是什么?它只是给了我一个名称错误,没有定义名称“items”,但我事先已经定义了它。你是说python对
NameError
撒谎吗?列表的名称是
keys
(或
values
)而不是
items
。这些也是元组,不是列表。那代码的输出是什么?它只是给了我一个名称错误,没有定义名称“items”,但我事先已经定义了它。你是说python对
名称错误
撒谎吗?列表的名称是
(或
)而不是
。这些也是元组,不是列表。