gpt4 book ai didi

python - 在 Python 中格式化 CSV 文件的输出

转载 作者:太空狗 更新时间:2023-10-29 21:00:29 25 4
gpt4 key购买 nike

我正在用 Python 创建一个非常基本的“地址簿”程序。我正在从 CSV 文件中获取联系人数据,其内容类似于以下示例:

Name,Phone,Company,Email
Elon Musk,454-6723,SpaceX,emusk@spacex.com
Larry Page,853-0653,Google,lpage@gmail.com
Tim Cook,133-0419,Apple,tcook@apple.com
Steve Ballmer,456-7893,Developers!,sballmer@bluescreen.com

我正在尝试格式化输出,使其看起来更清晰、更易读,即所有内容都按行和列排列,如下所示:

Name:        Phone:        Company:        Email:        
Elon Musk 454-6723 SpaceX emusk@spacex.com

我目前的代码如下:

f = open("contactlist.csv")
csv_f = csv.reader(f)
for row in csv_f:
print(row)

这自然是由于缺乏格式化,产生了这个,看起来仍然很不干净。

['Name', 'Phone', 'Company', 'Email']
['Elon Musk', '454-6723', 'SpaceX', 'emusk@spacex.com']
['Larry Page', '853-0653', 'Google', 'lpage@gmail.com']
['Tim Cook', '133-0419', 'Apple', 'tcook@apple.com']
['Steve Ballmer', '456-7893', 'Developers!', 'sballmer@bluescreen.com']

任何关于如何产生更清晰的输出的提示都将不胜感激,因为我是初学者并且我发现所有这些都很困惑。非常感谢。

最佳答案

您可以使用 format 来左对齐您的输出。例如,

f = open("contactlist.csv")
csv_f = csv.reader(f)
for row in csv_f:
print('{:<15} {:<15} {:<20} {:<25}'.format(*row))

输出:

Name             Phone            Company              Email                    
Elon Musk 454-6723 SpaceX emusk@spacex.com
Larry Page 853-0653 Google lpage@gmail.com
Tim Cook 133-0419 Apple tcook@apple.com
Steve Ballmer 456-7893 Developers! sballmer@bluescreen.com

您可以阅读有关 format here 的更多信息。 < 符号左对齐文本,数字指定字符串的宽度。每个 {} 都可以在冒号 : 之前包含一个位置参数 - 如果省略它们,则字符串将按照解压缩列表 row 中参数的顺序出现。

关于python - 在 Python 中格式化 CSV 文件的输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39176935/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com