项目六用户注册登录

目录

文件的打开与关闭

打开文件

关闭文件

上下文管理器

文件的读取与写入

读取文件

写入文件

文件的定位读写

管理文件和文件夹

删除文件

重命名文件

新建文件夹

删除文件夹

获取当前目录

更改默认目录

获取目录列表

项目演练


文件的打开与关闭

打开文件

在Python中,使用open()函数来打开文件。open()函数的基本格式如下:

file_object = open(file_name, access_mode, buffering)
  • file_name: 要打开的文件名(包括路径)
  • access_mode: 文件打开方式,如下表所示:
Mode Description
'r' 读取模式,打开文件以进行读取(默认)
'w' 写入模式,打开文件以进行写入
'a' 追加模式,打开文件以将内容附加到文件底部
'x' 创建模式,仅在文件不存在时创建新文件并打开
'b' 二进制模式,与其他模式结合使用以进行二进制读写
't' 文本模式,与其他模式结合使用以进行文本读写
  • buffering: 控制缓冲的策略,如下表所示:
Value Description
0 不做缓冲
1 行缓冲
大于 1 缓冲区大小(以字节为单位)

Python打开文件的基本格式已经在上一个回答中介绍过了,下面是一个简单的案例:

# 以读取模式打开文件
with open('example.txt', 'r') as f:
    content = f.read()
    print(content)

# 以写入模式打开文件
with open('example.txt', 'w') as f:
    f.write('Hello, world!')

# 以追加模式打开文件
with open('example.txt', 'a') as f:
    f.write('\nNice to meet you.')
关闭文件

关闭文件是很重要的操作,因为它可以释放系统资源和避免文件损坏。关闭文件的基本格式如下:

file.close()

其中,file是文件对象,close()是关闭文件的方法。当文件被打开时,内存中会创建一个文件对象来代表该文件。当文件操作结束后,应该使用close()方法来关闭文件对象。如果没有关闭文件对象,会导致内存泄漏和其他问题。

下面是一个简单的案例,演示如何使用close()方法来关闭文件:

# 打开文件
file = open('test.txt', mode='r', encoding='utf-8')
try:
    # 读取文件内容
    content = file.read()
    print(content)
finally:
    # 关闭文件
    file.close()

在这个例子中,我们先打开了一个名为test.txt的文件,然后使用read()方法读取文件的全部内容,并将结果存储到content中。由于文件可能会被其他进程或程序占用,所以在处理文件时应该使用try...finally...语句来确保文件被正确关闭。因此,在finally块中使用close()方法来关闭文件。

上下文管理器

上下文管理器由关键字with和as联合启动,从而实现安全关闭文件,语法格式如下:

with open(file_name) as file_object:
     文件的操作

文件的读取与写入

读取文件

read()方法用于读取文本文件中的整个文件内容,read(size) 方法可以读取指定数量的字符,如果不指定 size 参数,则默认读取整个文件内容。注意如果文件过大一次性读取会消耗内存。简单示例:

with open('file.txt', 'r') as file:
    content = file.read()  # 读取整个文件内容

print(content)
 

readline()方法用于读取文本文件中的一行内容,包括行末换行符。在文件末尾时返回空字符串 ''。可以多次调用 readline() 方法以读取文本文件的多行内容。简单示例:

with open('file.txt', 'r') as file:
    first_line = file.readline()  # 读取第一行内容
    second_line = file.readline()  # 读取第二行内容

print(first_line)
print(second_line)
 

readlines()方法用于读取文本文件的所有行并返回一个列表,列表中的每个元素是文件的一行内容(包括行末换行符)。简单示例:

with open('file.txt', 'r') as file:
    lines = file.readlines()  # 读取所有行,并返回一个列表

for line in lines:
    print(line)
 

需要注意的是,以上方法都针对文本文件进行读取。对于二进制文件,需要使用 rb 模式打开文件,并使用 read() 方法读取文件中的字节。

写入文件

write()方法write(str) 方法用于向文本文件中写入字符串内容。如果文件不存在,则会自动创建该文件。如果文件已存在且打开方式为 w 或 w+,则会覆盖原有文件内容并写入新的内容。示例:

with open('file.txt', 'w') as file:
    file.write('Hello, World!\n')  # 写入字符串到文件中
    file.write('This is a sample file.\n')

with open('file.txt', 'r') as file:
    content = file.read()  # 读取文件内容

print(content)
 
# 输出结果Hello, World!
This is a sample file.

writelines()方法writelines(lines) 方法用于向文本文件中写入多行内容。它接收一个字符串列表

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

好运2024

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

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

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

打赏作者

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

抵扣说明:

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

余额充值