文件的读写操作是编程过程中经常使用到的操作之一,在python中使用函数实现文件的读写操作可以提高操作的效率和准确性。Python提供了一些内置函数和模块来实现文件的读写操作,如open()函数,os模块等。
一、open()函数的使用
open()函数用于打开一个文件,返回一个文件对象。语法为:
f = open(filename, mode)
其中,filename是文件名(包括路径),mode是打开文件的模式。mode参数有多种取值,常用的有:
- 'r': 以只读方式打开文件(默认)
- 'w': 以写方式打开文件,会覆盖已存在的文件
- 'x': 如果文件已经存在,使用此模式打开会引发异常
- 'a': 以写方式打开文件,如果文件存在,则在末尾追加写入
- 'b': 以二进制模式打开文件
- '+': 可读写模式(可添加到其他模式中使用)
读取文件时,可以使用文件对象的read()、readline()和readlines()方法。其中,read()方法用于读取整个文件内容,readline()方法用于读取一行内容,readlines()方法用于读取所有行的内容并返回一个列表。示例代码如下:
# 读取整个文件 f = open('test.txt', 'r') content = f.read() print(content) f.close() # 逐行读取文件 f = open('test.txt', 'r') for line in f: print(line) f.close() # 读取所有行信息 f = open('test.txt', 'r') lines = f.readlines() for line in lines: print(line) f.close()
二、with语句的使用
在使用open()函数时,为避免忘记关闭文件,可以使用Python的with语句来自动关闭文件。示例代码如下:
with open('test.txt', 'r') as f: content = f.read() print(content)
使用with语句打开文件时,在with语句块结束后会自动关闭文件,不需要手动调用close()函数。
三、os模块的使用
os模块是Python提供的一个与操作系统相关的模块,可以使用该模块中的函数来实现文件操作。os模块中常用的函数有:
- os.rename(): 重命名文件
- os.remove(): 删除文件
- os.mkdir(): 创建目录
- os.rmdir(): 删除目录
- os.getcwd(): 获取当前工作目录
示例代码如下:
import os # 重命名文件 os.rename('test.txt', 'test1.txt') # 删除文件 os.remove('test1.txt') # 创建目录 os.mkdir('test') # 删除目录 os.rmdir('test') # 获取当前工作目录 print(os.getcwd())
四、shutil模块的使用
shutil模块是Python提供的一个高级文件操作模块,对文件和文件夹的操作都有支持。shutil模块中常用的函数有:
- shutil.copy(): 复制文件
- shutil.copy2(): 复制文件,并保留原文件属性
- shutil.copytree(): 复制文件夹
- shutil.rmtree(): 删除文件夹
- shutil.move(): 移动文件或文件夹
示例代码如下:
import shutil # 复制文件 shutil.copy('test1.txt', 'test2.txt') # 复制文件夹 shutil.copytree('test', 'test_copy') # 删除文件夹 shutil.rmtree('test_copy') # 移动文件 shutil.move('test1.txt', 'test_copy/')
以上就是Python函数之文件读写操作的全部内容。