码迷,mamicode.com
首页 > 编程语言 > 详细

Python 文件I/O

时间:2017-12-28 19:49:40      阅读:202      评论:0      收藏:0      [点我收藏+]

标签:http   span   方法   新建   seek   报错   建立   adl   作文件   

一,对文件进行操作的流程:

     第一,建立文件对象。

     第二,调用文件方法进行操作。

     第三,不要忘了关闭文件。(文件不关闭的情况下,内容会放在缓存,虽然Python会在最后自动把内容读到磁盘,但为了以防万一,要养成关闭文件的习惯)

eg:f = open(‘1,txt‘,encoding =‘utf-8‘)

     print(f.read())

     f.close()

二,不同模式打开文件的完全列表:

注:只要沾上r,文件不存在的时候,打开都会报错


       只要沾上w,把文件内容清空

技术分享图片

不同模式及不同模式下的指针位置:

技术分享图片

三,文件操作方法

f.seek(n)  #查看光标定位
f.tell() #查看当前文件中指针的位置
f.truncate() #清空文件内容
f = open(‘file1,txt‘,encoding =‘utf-8‘)
print(f.tell()) #光标默认在起始位置
f.seek(10) #把光标定位到第10个字符之后
print(f.tell()) #输出10
f.close()
常用操作:
f = open(‘file.txt‘,‘a+‘)

f.seek(0) #把光标定位到起始位置
f.truncate() #清空文件内容
f.read() #读取文件里面所有的内容,大文件时不要用,因为会把文件内容都读到内存中,内存不够的话会把内存撑爆
f.readline()#读取一行的内容
f.readlines()#读取所有文件内容,返回一个list,元素是每行的数据,大文件时不要用,
因为会把文件内容都读到内存中,内存不够的话,会把内存撑爆
f.readable()#判断文件是否可读
f.write() #写入内容 写的时候传入一个str类型
f.writelines() #str list dic 元组类型(写的时候传入一个可迭代的对象)

大文件时,读取文件高效的操作方法:

f = open(‘file.txt‘)
for line in f:
print(line)
这样的话,line就是每行文件的内容,读完一行的话,就会释放一行的内存

with使用:在操作文件的时候,经常忘了关闭文件,这样的就可以使用with,它会在使用完这个文件句柄之后,自动关闭该文件,使用方式如下:

 with open(‘file.txt‘,‘r‘as f:#打开一个文件,把这个文件的句柄付给f

          for line in f:
              print(line)
   with open(‘file.txt‘) as fr,with open(‘file_bak‘,‘w‘) as fw: #这个是多文件的操作,打开两个文件,fr是读file.txt,fw是新建一个file_bak文件
           for line in fr:#循环file.txt中的每一行
               fw.write(line)#写到file_bak文件中
 
 
 
 

Python 文件I/O

标签:http   span   方法   新建   seek   报错   建立   adl   作文件   

原文地址:https://www.cnblogs.com/chendai21/p/8137186.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!