一、 文件的读写
读文件:从磁盘打开
写文件:将文件存入磁盘
使用内置函数open()创建文件对象。
格式为:
file = open(filename [,mode,encoding])
其中
file ——被创建的文件对象
open ——创建文件对象的函数
filename ——要创建或要打开的文件名称
mode ——打开模式默认为只读,也可以对打开模式进行更改
encoding ——默认文本文件中字符的编写格式为gbk
现在来尝试对一个简单文本文件的读取,创建一个文本文件(在该目录下进行创建,才创建到其他位置需要把路径也写出来)
读取文件的代码
#文件的读取
file = open('duqu.txt', 'r', encoding='utf-8')
print(file.readlines())
file.close()
运行结果
二、常用的文件操作模式
(1)r在前面已经讲过
(2)w
原来的文本文件
程序
#写
file = open('duqu.txt', 'w', encoding='utf-8')
file.write('python')
file.close()
运行结果.
(3)追加
原来的文本文件
#追加
file = open('duqu.txt', 'a', encoding='utf-8')
file.write('python')
file.close()
运行结果
(4) b,与其他方式一起使用
比如说读取一张图片,然后在复制该图片
程序
#二进制方式进行读取
sfile=open('img.png','rb')
tfile=open('copyimg.png','wb')
tfile.write(sfile.read())
tfile.close()
sfile.close()
运行结果
(5)+配合其他方式一起使用
三、文件对象的常用方法
示例,
文本文件里面的内容
(1)read([size])
①省略size,从头读到尾
file=open('duqu.txt','r',encoding='utf-8')
print(file.read())
运行结果
②规定了长度
file=open('duqu.txt','r',encoding='utf-8')
# print(file.read())
print(file.read((7)))
# print(file.readline())
# print(file.readlines())
# print(file.write('成就自我,服务祖国'))
运行结果
(2)readline()
从文本中读取一行内容
file=open('duqu.txt','r',encoding='utf-8')
# print(file.read())
# print(file.read((7)))
print(file.readline())
# print(file.readlines())
# print(file.write('成就自我,服务祖国'))
运行结果
(3)readlines
读取之后,放到列表中返回
file=open('duqu.txt','r',encoding='utf-8')
# print(file.read())
# print(file.read((7)))
# print(file.readline())
print(file.readlines())
# print(file.write('成就自我,服务祖国'))
运行结果
(4)write
①写字符串write(str)
file=open('duqu.txt','a',encoding='utf-8')
# print(file.read())
# print(file.read((7)))
# print(file.readline())
# print(file.readlines())
print(file.write('\n成就自我,服务祖国'))
运行结果
②写字符串列表writelines(s_list)
file=open('duqu.txt','a',encoding='utf-8')
lst=['我','们','一','起','加','油']
file.writelines(lst)
运行结果
注意:文件操作完成后,要注意代码的规范性,后面加一个close用于释放资源。同时,close就已经是把文件关闭了,之后对文件进行的操作就是无效的了。
四、with语句
使用with语句可以自动关闭文件,with语句可以自动管理上下文资源,不论什么原因跳出with块,都能确保文件的正常关闭,从而达到释放资源的目的。
例如
#with语句
with open('duqu.txt','r',encoding='utf-8') as file:
print(file.read())
运行结果
五、os模块的常用函数
os模块是Python内置的与操作系统功能和文件系统相关的模块,该模块中的语句的执行结果通常与操作系统有关,可能存在在不同的操作系统上运行,得到的结果不一样的情况。os模块和os.path模块用于对目录或文件进行操作。
(1)打开系统里面的应用
①根据名称进行打开
这里使用os模块调用记事本和计算器
#os模块是与操作系统相关的模块
import os
#尝试利用os模块调用记事本
os.system('notepad.exe')
#利用os模块调用计算器
os.system('calc.exe')
运行结果
②根据路径进行打开
打开的是.exe可执行文件
格式:
os.startfile('路径')
其他与os模块操作目录相关函数
六、os.path模块的常用方法
七、总结