打开文件
1.建立磁盘 上的文件与程序中的对象相关联
2.通过相关的文件对象获得
文件操作
(1)读取(2)写入(3)其他:追加、 计算等
关闭文件
(1)切断文件与程序的联系
(2)写入磁盘, 并释放文件缓冲区
打开文件
Open( )
<variable> = open (<name>, <mode>)<name>磁盘文件名
<mode>打开模式
打开模式
'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:579817333
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
#例如,打开一个名为7.1.txt文件
textfile = open("7.1.txt",'r')
#打开一个music.mp3的音频文件
binfile = open('music.mp3','rb')
文件使用结束后要用close()方法关闭,释放文件的使用授权,格式:
<变量名>.close()
文件的读写
-
read() 返回值为包含整个文件内容的一个字符串
-
readline()返回值为文件下一 行内容的字符串。
-
readlines()返回值为整个文件内容的列表,每项是以换行符为结尾的一行字符串。
#1
fname = input("输入你要打开的文件:")
fo = open(fname,'r')
for line in fo.readlines():
print(line)
fo.close()
#2
with open ("demo1.txt",'r',encoding='utf8')as f:
for line in f.readlines():
print(line,end='')
上述代码只适用简短代码,缺点是:文件非常大时,一次性将内容读取到列表中会占用很多内存,
硬性执行速度。合理的方法是逐行读入到内存,并逐行处理。Python将文件本身作为一个行序列,
遍历文件的所有行。
'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:579817333
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
fname = input("输入你要打开的文件:")
fo = open(fname,'r')
for line in fo():
print(line)
fo.close()
写入文件
从计算机内存向文件写入数据
- write() :把含有本文数据或二进制数据块的字符串写入文件中。
- writelines() :针对列表操作 ,接受 个字符串列表作为参数 ,将它
们写入文件。
#写法一
fname = input("请输入要写入的文件:")
fo = open(fname,'w+')
lst = ['This is a demo ','and demo']
fo.writelines(lst)
for line in fo:
print(line)
fo.close()
#写法二
lst=['This is a demo ','and demo']
with open ("demo1.txt",'a',encoding='utf8')as f:
for x in lst:
f.write('{}\n'.format(x))
with open ("demo1.txt",'r',encoding='utf8')as f:
for line in f.readlines():
print(line,end='')
执行结果: