Python基础文件读写之打开文件!

21 篇文章 0 订阅
20 篇文章 0 订阅

     使用Python内置函数open()可以打开指定的文件,用于对文件进行读取,修改或添加内容。
open()函数的语法如下所示:

    open(filename[,mode][,encoding])

open()函数公有8个参数,其中最常用的有3个,分别是filename(文件名称)、mode(文件打开模式)和encode(文件编码方式)。其中filename是不可以省略的,其他参数都可以省略,省略时会使用默认值。

     默认方式打开文件
Open()函数默认以只读方式打开文件,并且返回文件对象。打开文件代码如下所示。
例:

# 文件基本操作(open())
# 打开当前目录中的文件
file1 = open("myfile.txt") 
file1.close()
# 指定完整路径
file2 = open("D:\Programs\Python\Python37-32\myfile.txt") 
file2.close()

使用打开模式
打开文件时如果不指定模式,那么默认为'r',以只读方式打开文件。此外,还可以显式指定打开模式 
读取使用 'r' 
写入使用 'w'
追加使用 'a'

       还可以指定以文本模式或二进制模式打开文件(处理非文本文件(例如:图像、exe)时使用)。打开文件使用打开模式的例子如下所示例:

# 文件基本操作(打开模式)
# 相当于'r'或'rt'
file1 = open("myfile.txt")
print("文件打开模式:", file1.mode)
file1.close()
# 以文本模式写入
file2 = open("myfile.txt", 'w')
file2.close()
# 以二进制模式读写
file3 = open("logo.jpg", 'r+b') 
file3.close()

r:只读模式
只读,不可写。打开时光标自动定位到开头位置。如果以‘r’模式打开,执行写操作,会提示io.UnsupportedOperation: not writable
w:只写模式
只写,不可读。打开时自动清空原文档。如果以’w’模式打开执行读操作,会提示io.UnsupportedOperation: not readable
a:追加模式

只写,不可读。打开时不清空原文档,光标自动定位到文档末尾。如果以’a’模式打开执行读操作,会提示io.UnsupportedOperation: not readable

r+:读写模式
先读后写。打开文档时不清空原内容,光标定位正在开始位置。读完后光标会移到文档末尾,所以写的时候是追加在文档最后的。不会覆盖原内容。
如果以“r+”模式打开,但是先写后读,那么写入的内容会覆盖原内容,读取时从写结束位置开始读。如果原文档内容小于新写入的,那么全部被覆盖,读到的为空。
如果原文档内容大于新写入的,那么读到的内容为原文档剩下的内容。

w+:写读模式
先写后读。打开文档即清空原内容,从文档开头写起,写完后光标自动移到文档末尾,此时进行读取,内容为空。需要将光标移到首位,f.seek(0)。
如果以“w+”模式打开,先进行读操作,读到的内容也是为空,因为打开即被清空了。

a+:追加写读模式
先写后读。追加在原文档末尾,不会清空原内容,写完后光标移到文档末尾,此时进行读取,内容为空。需要将光标移到首位,f.seek(0)。
如果以“a+”模式打开,先进行读操作,读到的内容也是为空,因为打开即把光标定位在文档末尾。

     好了今天的分享全是干货,给初学者一个Python文件打开的总结!!!好好看肯定会有收获滴,文件读写可以用到很多地方呦!好了今天就到这里了拜拜!

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值