设为首页 收藏本站
查看: 863|回复: 0

[经验分享] python对文件进行读写操作

[复制链接]

尚未签到

发表于 2017-5-1 14:08:20 | 显示全部楼层 |阅读模式
python进行文件读写的函数是open或file



file_handler = open(filename,,mode)

Table mode


模式



描述



r


以读方式打开文件,可读取文件信息。


w


以写方式打开文件,可向文件写入信息。如文件存在,则清空该文件,再写入新内容


a

以追加模式打开文件(即一打开文件,文件指针自动移到文件末尾),如果文件不存在则创建

r+


以读写方式打开文件,可对文件进行读和写操作。


w+


消除文件内容,然后以读写方式打开文件。


a+


以读写方式打开文件,并把文件指针移到文件尾。


b


以二进制模式打开文件,而不是以文本模式。该模式只对Windows或Dos有效,类Unix的文件是用二进制模式进行操作的。



Table 文件对象方法


方法



描述



f.close()


关闭文件,记住用open()打开文件后一定要记得关闭它,否则会占用系统的可打开文件句柄数。


f.fileno()


获得文件描述符,是一个数字


f.flush()


刷新输出缓存


f.isatty()


如果文件是一个交互终端,则返回True,否则返回False。


f.read([count])


读出文件,如果有count,则读出count个字节。


f.readline()


读出一行信息。


f.readlines()


读出所有行,也就是读出整个文件的信息。


f.seek(offset[,where])


把文件指针移动到相对于where的offset位置。where为0表示文件开始处,这是默认值 ;1表示当前位置;2表示文件结尾。


f.tell()


获得文件指针位置。


f.truncate([size])


截取文件,使文件的大小为size。


f.write(string)


把string字符串写入文件。


f.writelines(list)


把list中的字符串一行一行地写入文件,是连续写入文件,没有换行。

 


 
例子如下:
读文件
 

Python代码   DSC0000.png





  • read = open(result)  
  •        line=read.readline()  
  •        while line:  
  •              print line  
  •              line=read.readline()#如果没有这行会造成死循环  
  •        read.close  



 写文件
 

Python代码  





  • read = file(result,'a+')  
  •         read.write("\r\n")  
  •         read.write("thank you")  
  •         read.close  



 其它
 

Python代码  





  • #-*- encoding:UTF-8 -*-  
  • filehandler = open('c:\\111.txt','r')    #以读方式打开文件,rb为二进制方式(如图片或可执行文件等)  
  •   
  • print 'read() function:'              #读取整个文件  
  • print filehandler.read()  
  •   
  • print 'readline() function:'          #返回文件头,读取一行  
  • filehandler.seek(0)  
  • print filehandler.readline()  
  •   
  • print 'readlines() function:'         #返回文件头,返回所有行的列表  
  • filehandler.seek(0)  
  • print filehandler.readlines()  
  •   
  • print 'list all lines'                #返回文件头,显示所有行  
  • filehandler.seek(0)  
  • textlist = filehandler.readlines()  
  • for line in textlist:  
  •     print line,  
  • print   
  • print  
  •   
  • print 'seek(15) function'               #移位到第15个字符,从16个字符开始显示余下内容  
  • filehandler.seek(15)  
  • print 'tell() function'  
  • print filehandler.tell()              #显示当前位置  
  • print filehandler.read()  
  •   
  • filehandler.close()                   #关闭文件句柄  


   

  1 #!/usr/bin/env python
2 """  create text file """
3
4 import os
5
6
7 def write(self,user_input):
8     fname = user_input;
9     ls = os.linesep
10     all = []
11     print "\nEnter lines('.' by itself to quit).\n"
12     while True:
13       entry = raw_input('>')
14       if entry == '.':
15         break
16       else:
17         all.append(entry)
18     fobj = open(fname, 'w')
19     fobj.writelines(["%s%s"%(x,ls) for x in all])
20     fobj.flush();
21     fobj.close()
22     print 'DONE!'
23
24 def read(self, user_input):
25     fname = user_input;
26     if os.path.exists(fname):
27        fobj = open(fname, 'r')
28        for echoline in fobj
29          print echoline
30        fobj.close();

   

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-371694-1-1.html 上篇帖子: [Python] 探讨Django的MTV模式(二) 下篇帖子: Python 学习入门(18)—— 字符串
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表