【Python入门】day-11 文件操作

目录

1、open函数

2、write函数

3、read函数

4、文件指针 

5、close函数

6、with语句

7、判断函数


1、open函数

与C类似,在Python中使用open函数,可以进行文件操作,其原型为:open(file, mode)。

file表示文件的地址,既可以是绝地路径也可以是相对路径;mode表示操作模式,'r'表示只读、'w'表示重新写、'a'表示接着写

使用时可创建一个文件对象来装open函数的返回值:

f = open("D:/源代码/New_text.txt", 'r')

2、write函数

使用write函数可往文件里添加字符串,使用方法为:文件对象.write("xxx")

f = open("D:/源代码/New_text.txt", 'w')
f.write("lxy loves lwy.")
f.close()

此时我们打开对应文件可以看到字符串写入成功。如果没有对应的文件,那Python会直接创建一个新文件。

 与write函数相同的还有writelines函数,不同点在于writelines并不会换行,需要自行加入转义字符才会换行。

3、read函数

使用read函数可以查看文件中的数据。

f = open("D:/源代码/New_text.txt", 'r+')
print(f.read())
f.close()

与read函数相同的还有readline函数,其不同在于一次只读取一行。

也可以使用for循环打印出来:

f = open("D:/源代码/New_text.txt", 'r+')
for each in f:
    print(each)
f.close()

4、文件指针 

文件操作是通过文件指针一个接一个的读取数据对象实现的,当读取完所有内容时,文件指针指向文件结尾,此时再调用read函数将什么也读不到:

f = open("D:/源代码/New_text.txt", 'r+')
for each in f:
    print(each)
print(f.read())
f.close()
# 结果表明f.read语句打印为空

此时我们可以使用tell函数来查看文件指针指向的位置:

f = open("D:/源代码/New_text.txt", 'r+')
for each in f:
    print(each)
print(f.tell())
# 打印为14

14表明此时文件指针指向第14个字符的位置,使用seek函数可自定义文件指针指向的位置。

f = open("D:/源代码/New_text.txt", 'r+')
for each in f:
    print(each)
print(f.tell())
f.seek(0)
print(f.tell())

重新指向0后,我们可以看到read函数又能读取内容了:

f = open("D:/源代码/New_text.txt", 'r+')
for each in f:
    print(each)
f.seek(0)
print(f.read())

5、close函数

每次使用open函数打开文件后,对文件进行的操作其实都保存在文件缓冲区中,只有使用close函数结束文件操作后,对文件进行的操作才能写入文件。close函数可以理解为保存功能。

f = open("D:/源代码/New_text.txt", 'r+')
f.close()

特别注意:每一个open都要有一个对应的close,不然会一直占用内存,后果严重。

6、with语句

若使用with语句,将会自动保存,不需要使用close函数,格式如下:

with open("D:/源代码/New_text.txt", 'r+') as f:
    f.write("I love Python!")

7、判断函数

使用readable和writable函数可以判断该文件是否可读和是否可写:

with open("D:/源代码/New_text.txt", 'r+') as f:
    print(f.readable())
    print(f.writable())
# 结果为两个True

'r+'表示可读可写模式

pathlib库中,有判断该文件对象是否为文件或者文件夹的函数,导入方式如下:

import pathlib
f = pathlib.Path("D:/源代码/New_text.txt")
print(f.is_dir())
print(f.is_file())
# 结果为:False True

is_dir函数可以判断该对象是否为文件夹,is_file函数可以判断该对象是否为文件。

更多方法可参考菜鸟教程:Python3 File 方法 | 菜鸟教程 (runoob.com)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值