携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第18天,点击查看活动详情
前言
创建文档的最简单方法是生成纯文本并将其存储在文件中,尽管与 pdf、docx 等其他格式相比,纯文本文档可能看起来很简单,但不要低估它的实用性。纯文本是最容易共享的格式,因为它几乎适用于所有环境,而文本信息在表示信息方面同样可以发挥很大作用。
使用纯文本格式创建文档
在本节中,我们将生成一个关于用户影评的文本格式的简单文档,其中包括了用户及其观看的电影,以及用户对其所观看电影的评分,其中要表示的原始数据采用 Python 字典的形式表示,同时文档中还包括文档创建生成的日期。
Python 创建文档
首先,导入所需库:
>>> from datetime import datetime
接下来,我们创建一个简单的模板并添加一个包含所有数据的字典,然后,将这两者合并到特定文档中。
- 使用文本格式创建文档中数据模板:
>>> template = """
... Movie Score
... -------------
... User: {user_name}
... Movie: {movie_name}
... User rating for the movie: {score}
... """
- 创建一个包含要存储的值的字典,字典中存储着要在报告中显示的数据:
>>> data = {'user_name': '001', 'movie_name': '007', 'score': 5.4}
- 生成文档中所要记录的文本,将数据添加到模板中:
>>> doc = template.format(**data)
在以上代码中,我们将字典与模板相结合,字典上的键对应于模板上的参数,在格式调用中使用双星来解包字典,将每个键作为参数传递给 format() 函数。
使用当前日期创建一个新文件并存储用户影评信息:
>>> date = datetime.utcnow()
>>> file_name = '{date}_doc.txt'
>>> filename = file_name.format(date=date.strftime('%Y-%m-%d'))
>>> filename
'2022-08-18_doc.txt'
>>> with open(filename, 'w') as f:
... f.write(doc)
...
79
生成的数据信息存储在新创建的文件中,我们使用与 open() 配对的 with 上下文管理器。生成一个新文件来写入数据,关闭 with 后,文件被正确关闭,数据存储在磁盘上。文件的打开模式决定了如何打开文件,是读取还是写入,以及文件是文本还是二进制文件,在open() 函数中使用 w 模式以允许写的方式打开文件,如果指定的文件已经存在,则会以新创建的文档覆盖原有文档。
检查所生成的文档,检查文件是否已经使用正确的数据创建:
$ cat 2022-08-18_doc.txt
Movie Score
-------------
User: 001
Movie: 007
User rating for the movie: 5.4