首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python:如何插入制表符和格式化文本文件

Python:如何插入制表符和格式化文本文件
EN

Stack Overflow用户
提问于 2018-04-28 00:06:07
回答 1查看 337关注 0票数 0

引入一个格式如下的文本文件:

代码语言:javascript
复制
hammer#9.95
saw#20.15
shovel#35.40

我需要将其引入python,并对其进行格式化,以使其与现有的代码片段保持一致:

# display header line for items list print('{0: <10}'.format('Item'), '{0: >17}'.format('Cost'), sep = '' )

目标是让文本文件与现有的头文件保持一致,如下所示:

代码语言:javascript
复制
Item   Cost
hammer $9.95
saw    $20.15
shovel $35.4

我可以将文本文件引入到Python中,并将#符号替换为$符号:

代码语言:javascript
复制
file = open('Invoice.txt', 'r')
file_contents = file.read()
new_file_contents = file_contents.replace('#', '$')

这给出了下面的输出:

代码语言:javascript
复制
hammer$9.95
saw$20.15
shovel$35.40

但是我在格式化方面遇到了麻烦。有什么建议吗?

EN

回答 1

Stack Overflow用户

发布于 2018-04-28 00:20:23

你可以这样做:

代码语言:javascript
复制
with open(file,'rt',encoding='utf-8') as infile:
    for line in infile:
        print("{:<6} {}".format(line.strip().split('#')[0],"$"+line.strip().split("#")[1]))

唯一的问题是,如果你有一个比锤子更长的词,它看起来会很难看。我建议首先在列表中找到最大的单词,然后将其用作{:<6}的限制符。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50066325

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档