Python 文件处理

Python 文件处理

当我们使用任何计算机应用程序时,需要提供一些数据。数据存储在计算机的主内存(RAM)中,直到应用程序运行结束,然后内存中的内容将被清除。

我们希望以一种可持久存储的方式将它存储起来,以便在需要时可以检索,比如存储到磁盘文件中。

Python使用内置的 input()print() 函数来执行标准的输入/输出操作。Python程序通过sys模块中定义的标准流对象stdin和stdout与这些IO设备进行交互。

input()函数从标准输入流设备即键盘读取字节。因此,以下两个语句都从用户那里读取输入。

name = input()
#is equivalent to
import sys
name = sys.stdin.readline()

另一方面,print()函数将数据发送到标准输出流设备,即显示器。它是一个方便的函数,模拟stdout对象的write()方法。

print (name)

#is equivalent to
import sys
sys.stdout.write(name)

任何与输入和输出流交互的对象被称为文件对象。Python的内置函数open()返回一个文件对象。

open()函数

它创建一个文件对象,该文件对象将用于调用与之相关的其他支持方法。

语法

file object = open(file_name [, access_mode][, buffering])

以下是参数的详细说明:

  • file_name - file_name参数是一个包含要访问的文件的名称的字符串值。

  • access_mode - access_mode确定文件的打开模式,例如读取、写入、追加等。下表中给出了可能的值的完整列表。这是一个可选参数,默认的文件访问模式是读取(r)。

  • buffering - 如果将buffering值设置为0,将不进行缓冲。如果将buffering值设置为1,在访问文件时执行行缓冲。如果将buffering值指定为大于1的整数,则使用指示的缓冲区大小执行缓冲操作。如果为负数,则缓冲区大小是系统默认值(默认行为)。

文件打开模式

以下是文件的打开模式:

序号 模式与描述
1 r只读方式打开文件。文件指针定位在文件开头。这是默认模式。
2 rb 以二进制只读方式打开文件。文件指针定位在文件开头。这是默认模式。
3 r+ 以读写方式打开文件。文件指针定位在文件开头。
4 rb+ 以二进制读写方式打开文件。文件指针定位在文件开头。
5 w 以写入方式打开文件。如果文件存在,则覆盖文件。如果文件不存在,则创建一个新文件来进行写入。
6 b 以二进制模式打开文件
7 t 以文本模式打开文件(默认)
8 + 以读写模式打开文件
9 wb 以二进制格式只写入文件。如果文件存在,则覆盖文件。如果文件不存在,则创建一个新文件进行写入。
10 w+ 以读写模式打开文件。如果文件存在,则覆盖现有文件。如果文件不存在,则创建一个新文件进行读写。
11 wb+ 以二进制格式读写模式打开文件。如果文件存在,则覆盖现有文件。如果文件不存在,则创建一个新文件进行读写。
12 a 打开一个文件以进行追加操作。如果文件存在,文件指针将位于文件末尾。也就是说,文件处于追加模式。如果文件不存在,它将创建一个新文件以进行写入操作。
13 ab 以二进制格式打开一个文件以进行追加操作。如果文件存在,文件指针将位于文件末尾。也就是说,文件处于追加模式。如果文件不存在,它将创建一个新文件以进行写入操作。
14 a+ 同时打开一个文件以进行追加和读取操作。如果文件存在,文件指针将位于文件末尾。文件以追加模式打开。如果文件不存在,它将创建一个新文件以进行读取和写入操作。
15 ab+ 在二进制格式中以添加和读取的方式打开文件。如果文件存在,文件指针将位于文件末尾。文件以添加模式打开。如果文件不存在,它将创建一个新的文件来进行读取和写入。
16 x 以独占模式打开,如果文件已存在,则操作失败

一旦打开文件并且拥有一个文件对象,您可以获取与该文件相关的各种信息。

示例

# Open a file
fo = open("foo.txt", "wb")
print ("Name of the file: ", fo.name)
print ("Closed or not: ", fo.closed)
print ("Opening mode: ", fo.mode)
fo.close()

它将产生以下 输出

Name of the file: foo.txt
Closed or not: False
Opening mode: wb

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程