Python 文件操作:读、写、删、改

目录

一、文件读取:r

1.基本读取:r                  2.逐行读取:r                   3.读取指定行数:r

二、文件写入

1.写入新文件:w             2.追加内容到文件:a        3.使用列表写入多行:w

三、文件删改

1.检查文件是否存在        2.重命名文件            3.删除文件:os.remove()        4.获取文件大小

四、二进制文件操作

1.读取二进制文件            2.写入二进制文件

五、CSV文件操作

1.读取CSV文件               2.写入CSV文件

​​​六、JSON文件操作

1.读取JSON文件             2.写入JSON文件​​​​​​​

七、使用shutil模块复制和移动文件

1.复制文件​​​​​​​                       2.移动文件​​​​​​​

八、使用os模块删除目录

1.删除空目录​​​​​​​                   2.递归删除目录及其内容


访问模式及说明 

访问模式

说明

r

以只读方式打开文件。文件的指针将会放在文件的开头。这是默认模式。

rb

以二进制格式打开一个文件用于只读。文件指针将会放在文件的开头。这是默认模式。

w

打开一个文件只用于写入。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。

wb

以二进制格式打开一个文件只用于写入。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。

a

打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。

ab

以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。

r+

打开一个文件用于读写。文件指针将会放在文件的开头。

w+

打开一个文件用于读写。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。

a+

打开一个文件用于读写,如果该文件已存在,文件指针将会放在文件的结尾。文件打开时会是追加模式。如果改文件不存在,创建新文件用于读写。

rb+

以二进制格式打开一个文件用于读写。文件指针将会放在文件的开头

wb+

以二进制格式打开一个文件用于读写。如果改文件已存在则会覆盖。如果改文件不存在,创建新文件。

ab+

以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。如果改文件不存在,创建新文件用于读写。

一、文件读取:r

1.基本读取:r


with open('example.txt', 'r') as file:
    content = file.read()
    print(content)

2.逐行读取:r

with open('example.txt', 'r') as file:
    for line in file:
        print(line.strip())

3.读取指定行数:r

with open('example.txt', 'r') as file:
    lines = [next(file) for _ in range(5)]
    print(lines)

二、文件写入

1.写入新文件:w

with open('output.txt', 'w') as file:
    file.write("Hello, world!\n")

2.追加内容到文件:a

with open('output.txt', 'a') as file:
    file.write("More text to append.\n")

3.使用列表写入多行:w

lines = ["First line\n", "Second line\n"]
with open('output.txt', 'w') as file:
    file.writelines(lines)

三、文件删改

1.检查文件是否存在

import os
if os.path.exists('example.txt'):
    print("File exists!")

2.重命名文件

os.rename('old_name.txt', 'new_name.txt')

3.删除文件:os.remove()

os.remove('example.txt')

4.获取文件大小

size = os.path.getsize('example.txt')print(f"File size: {size} bytes")

四、二进制文件操作

1.读取二进制文件

with open('image.png', 'rb') as file:
    image_data = file.read()
    print(type(image_data))  #

2.写入二进制文件

data = b'\x00\x01\x02\x03'
with open('binary_file.bin', 'wb') as file:
    file.write(data)

五、CSV文件操作

1.读取CSV文件​​​​​​​

import csv
with open('data.csv', newline='') as csvfile:
    reader = csv.reader(csvfile)
    for row in reader:
        print(row)

2.写入CSV文件

import csv
data = [['Name', 'Age'], ['John', '25'], ['Jane', '30']]
with open('output.csv', 'w', newline='') as csvfile:
    writer = csv.writer(csvfile)
    writer.writerows(data)

​​​六、JSON文件操作

1.读取JSON文件​​​​​​​

import json
with open('data.json') as file:
    data = json.load(file)
    print(data)

2.写入JSON文件​​​​​​​

import json
data = {"name": "John Doe", "age": 30}
with open('output.json', 'w') as file:
    json.dump(data, file)

七、使用shutil模块复制和移动文件

1.复制文件​​​​​​​

import shutil
shutil.copy('source.txt', 'destination.txt')

2.移动文件​​​​​​​

import shutil
shutil.move('source.txt', 'new_destination.txt'

八、使用os模块删除目录

1.删除空目录​​​​​​​

import osos.rmdir('empty_directory')

2.递归删除目录及其内容

import shutilshutil.rmtree('directory_to_delete')

以上示例展示了Python中处理不同类型文件的强大功能。掌握这些技巧将使你能够在各种项目中更加高效地工作,无论是处理图像、音频文件,还是管理复杂的结构化数据。

如果你在实践中遇到任何问题,或者想分享你的项目成果,请随时在评论区留言。编程旅程中,我们始终相伴!

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
好的,我可以帮你回答关于Python操作.txt文件的问题。 对于对.txt文件的增、、查操作可以使用Python内置的open()函数。使用open()函数打开文件时,可以指定文件的打开方式,包括、追加、二进制等操作。例如: ```python # 打开文件,指定以方式打开 file = open('test.txt', 'w') # 入数据 file.write('Hello World') # 关闭文件 file.close() ``` 以上代码中,我们打开了一个名为test.txt的文件,并以的方式打开。接着,我们向文件入了一段文本内容,最后关闭了文件。这样,我们就实现了对文件操作。 除了入,我们还可以使用Python内置的open()函数实现对文件取、除等操作。例如,以下代码实现了对txt文件操作: ```python # 打开文件,指定以方式打开 file = open('test.txt', 'r') # 文件内容 content = file.read() # 输出文件内容 print(content) # 关闭文件 file.close() ``` 以上代码中,我们打开了一个txt文件,并以的方式打开。接着,我们使用read()函数取了文件内容,并将其存储在了一个变量中。最后,我们输出了这个变量的值,实现了对文件操作。 模糊查询可以使用Python内置的re模块,使用正则表达式进行匹配。例如,以下代码实现了对txt文件内容的模糊查询: ```python import re pattern = 'Hello\s\w+' # 打开文件,指定以方式打开 file = open('test.txt', 'r') # 逐行文件内容 for line in file: # 匹配正则表达式 match = re.search(pattern, line) # 如果匹配成功,则输出匹配结果 if match: print(match.group()) # 关闭文件 file.close() ``` 以上代码中,我们使用了Python内置的re模块进行正则表达式匹配。我们首先定义了一个正则表达式模式,用于匹配txt文件中的内容。然后,使用open()函数打开文件,并逐行文件内容。对于每一行内容,我们使用re.search()函数进行匹配。如果匹配成功,则输出匹配结果。最后,我们关闭了文件。这样,我们就实现了对txt文件内容的模糊查询操作
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

猪猪爱学习

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值