介绍
编程语言的主要功能之一是帮助您处理数据。这包括数据的写入、读取、存储以及传输。Python 是最受欢迎的编程语言之一。如果您计划使用 Python,您应该对如何使用不同的文件类型有一个基本的了解。最简单的文件类型是 txt 或纯文本文件格式。假设您有一个用于检查用户访问控制的程序。该列表本身将保存为文本文件。因此,虽然您可能会在某些公司使用其他程序,但您将从文本文件中提取值。这就是为什么理解文本文件格式非常重要的原因。
在本教程中, 我们将首先简要介绍 Python 中基本文件格式的背景。然后,我们将学习如何在程序中打开、读取和写入文本文件。
在开始之前…
在开始本教程之前,您需要满足一些前提条件。首先,您应该已经 安装了 Python 3。除此之外,您还需要在系统上配置本地编程环境。本教程 适用于 Ubuntu 16.04 及以上版本、Debian 8、CentOS 7、Mac OS X 和 Windows 10。
文件格式
您可以在 Python 中使用各种文件格式。下表列出了所有不同的格式及其适用场景:
| 文件类型 | 描述 |
|---|---|
| txt | 纯文本文件存储仅表示字符(或字符串)的数据,不包含任何结构化元数据。 |
| CSV | 逗号分隔值文件使用逗号(或其他分隔符)来结构化存储的数据,从而允许将数据保存为表格格式。 |
| HTML | 超文本标记语言文件存储结构化数据,通常用于大多数网站。 |
| JSON | JavaScript 对象表示法是一种简单且高效的格式,使其成为最常用的存储和传输数据的格式之一。 |
在本教程中,我们将进一步详细探讨 txt 文件格式。
步骤 1:创建文本文件
首先,我们必须在 Python 中创建一个新的文本文件。为了便于理解,我们将以一周中的几天为例。为此,我们将打开文本编辑器,新建一个 txt 文件,并将其命名为 days.txt。接下来,让我们在新文件中将一周中的每一天作为单独的行输入:
|
1 2 3 4 5 6 7 |
星期一 星期二 星期三 星期四 星期五 星期六 星期日 |
现在我们有了内容,我们将保存该文件。记住您保存文件的位置非常重要。假设我们的用户是 sammy。该用户已将文件保存到以下路径:/users/sammy/days.txt。我们将在后续步骤中使用此路径。
步骤 2:打开文本文件
在开始编写程序之前,您必须在编辑器中创建一个文件。我们将创建一个名为 files.py 的文件,并将其保存到 /users/sammy 目录中,就像我们的 days.txt 文件一样。
要打开任何文件,您必须在磁盘文件和变量之间建立连接。这就是所谓的“打开”文件。文件的位置由文件路径指示。您需要路径来打开文件。例如,days.txt 文件的路径如下:/users/sammy/days.txt。然后,我们将创建一个字符串变量来保存此数据。如下所示,我们将在 path 变量在 files.py 脚本中创建一个变量,并根据 days.txt 路径修改该变量:
|
1 |
path = '/users/sammy/days.txt' |
之后,使用 open() 函数,我们将打开 days.txt 文件。对于此函数,您需要提供文件路径。在其他参数中,最重要的是模式(mode)参数。这是一个可选的字符串,您可以添加它来指定打开文件的模式。以下是几种模式选项:
'r’:读取'w’:写入'x’:创建并写入新文件'a’:追加到文件'r+’:读取和写入同一个文件
要仅从文件中读取,您需要使用 'r’ 模式。运行 open() 函数并打开 days.txt 文件。接下来,将其分配给 days_file 变量:
|
1 |
days_file = open(path,'r') |
步骤 3:文本文件读取
打开文件后,我们可以通过变量从中读取内容。与文件读取相关的操作有三种。让我们来探索这三种操作。
第一种操作是 <file>.read()。它将以一个字符串的形式向您展示文件的全部内容:
|
1 |
days_file.read() |
输出:
|
1 |
'Monday\nTuesday\nWednesday\nThursday\nFriday\nSaturday\nSunday\n' |
<file>.readline()。这将向您展示文件中的下一行。它本质上是逐行读取文件:|
1 |
days_file.readline() |
输出:
|
1 |
'Monday\n' |
|
1 |
days_file.readline() |
输出:
|
1 |
'Tuesday\n' |
<file>.readlines()。它将向您展示文件中所有行的列表。每个项目代表一行:|
1 |
days_file.readlines() |
输出:
|
1 |
['Monday\n', 'Tuesday\n', 'Wednesday\n', 'Thursday\n', 'Friday\n', 'Saturday\n', 'Sunday\n'] |
步骤 4:文件写入
接下来,我们将学习如何写入一个新文件。在我们的示例中,该文件将包含标题(Days of the Week),随后是星期几。
首先,我们必须创建 title 变量:
|
1 |
title = 'Days of the Week\n' |
接下来,我们必须以字符串变量的形式保存星期几。该变量将被命名为 days。我们将继续使用在上述步骤中使用的代码。我们将以读取模式打开文件,并将输出存储到我们的新 days 变量中:
|
1 2 3 |
path = '/users/sammy/days.txt' days_file = open(path,'r') days = days_file.read() |
这意味着我们已经为标题以及星期几创建了变量。现在我们可以写入文件本身了。第一步是使用目录 /users/sammy/ 指定文件位置。在路径中,您还将指定新文件:/users/sammy/new_days.txt。位置路径将保留在 new_path 变量中。接下来,使用 open() 函数以 ‘w’ 模式打开文件:
|
1 2 |
new_path = '/users/sammy/new_days.txt' new_days = open(new_path,'w') |
现在文件已打开,您可以使用写入函数 <file>.write() 输入数据。在这里,您需要输入一个字符串参数。如果您想换行,请输入换行符。对于我们的文件,我们将先输入标题,然后输入星期几。同时,我们还将使用一些 print 语句来跟踪脚本的进度:
|
1 2 3 4 |
new_days.write(title) print(title) new_days.write(days) print(days) |
步骤 5:文件关闭
关闭文件时,您正在终止磁盘文件与文件变量之间的连接。文件关闭后,其他程序就可以访问它。这也有助于保持文件及其数据的安全。因此,请务必记住在处理完文件后关闭它们。为此,您可以使用 <file>.close() 函数:
|
1 2 |
days_file.close() new_days.close() |
这就完成了 Python 中文件处理的部分。
步骤 6:代码检查
最后,我们将检查代码。在运行编写的代码之前,您应该这样做。代码应该类似于以下内容:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 |
path = '/users/sammy/days.txt' days_file = open(path,'r') days = days_file.read() new_path = '/users/sammy/new_days.txt' new_days = open(new_path,'w') title = 'Days of the Week\n' new_days.write(title) print(title) new_days.write(days) print(days) days_file.close() new_days.close() |
保存代码后,您需要运行 Python 脚本。为此,您需要打开终端:
|
1 |
$ python files.py |
它将显示以下输出:
|
1 2 3 4 5 6 7 8 9 |
Days of the Week Monday Tuesday Wednesday Thursday Friday Saturday Sunday |
要检查您的代码,您需要打开新文件,即 new_days.txt。如果一切正常,您将看到以下内容:
|
1 2 3 4 5 6 7 8 9 |
Days of the Week Monday Tuesday Wednesday Thursday Friday Saturday Sunday |
如果您看到与上述类似的内容,说明您已成功完成了这些步骤。
结论
通过本教程,我们旨在向您介绍 Python 3 中的基本文件格式。其中,最关键的是文本文件格式。我们对其进行了更详细的探讨。现在,您已经非常清楚打开、读取、写入和关闭数据文件所涉及的过程和步骤。利用这些信息,您将能够在自己的 Python 编程实践中有效地利用文本文件格式。
现在您已经学会了如何在 Python 中处理纯文本文件,这里还有一些来自 我们博客 的教程,可以帮助您开始使用 Python:
- 使用 Python 3 字符串格式化工具
- Python 3 中的循环:使用 Break、Continue 和 Pass 语句
- Python 3:数据类型转换指南
- 如何使用 Scrapy 和 Python 3 爬取网页
祝您编程愉快!
评论
暂无评论。发表第一条评论吧。