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

[经验分享] Python-文件的管理

[复制链接]

尚未签到

发表于 2018-8-10 12:40:42 | 显示全部楼层 |阅读模式
DSC0000.png

  字符的输入及输出
  输入(raw_input/input)---> 程序处理 ---> 输出(print)
  一.文件管理的三大步骤:
  1.打开文件; f = open("filename")
  2.处理文件;
  f.read()                      可以读取文件内容
  f.write("hello")         不能往文件中写入,因为默认文件以r的模式打开;
  3.关闭并保存文件; f.close()
  文件使用完毕后必须关闭,因为文件对象会占用操作系统的资源。
  二.文件的几种模式总结:
  1. r模式:
  若文件不存在,直接报错;
  文件只能读取,不能写入;
DSC0001.png

DSC0002.png

  2. w模式:
  若文件不存在,直接创建文件;
  文件只能写入,不能读取;
  打开文件时会清空原有文件内容;
DSC0003.png

  3. r+模式:
  若文件不存在,直接报错;
  文件可以读也可以写;
  具体写入的内容在哪里,由文件指针(句柄)决定;
  先读后写
DSC0004.png

  先写后读
DSC0005.png

  4. w+模式:
  若文件不存在,直接创建文件;
  文件既能写入也能读取;
  打开文件时会清空原有文件内容;
DSC0006.png

  
  5. a模式
  若文件不存在,直接创建文件;
  文件只能写入,不能读取;
  写入的内容直接追加到文件最后;
DSC0007.png

  6. a+模式
  若文件不存在,直接创建文件;
  文件既能写入也能读取;
  写入的内容直接追加到文件最后;
DSC0008.png

  7. b模式
  以二进制的方式打开文件,可以跟r,w,+等组合使用;
  二进制文件
  要读取二进制文件,比如图片、视频等等,用 'rb' 模式打开文件即可
  >>> f = open('/root/test.jpg', 'rb')
  >>> f.read()
  '\xff\xd8\xff\xe1\x00\x18Exif\x00\x00...' # 十六进制表示的字节
  三.文件的读取
  将passwd里的文件内容追加到hello.txt中
DSC0009.png

  read()                 直接读取文件所有内容;
  readline()           每次读取文件一行内容,返回类型为字符串;
DSC00010.png

  readlines()         读取文件所有内容,以列表形式返回;
DSC00011.png

  xreadlines()       类似生成器,文件内容不直接以列表方式返回;读取内容多时用
DSC00012.png

DSC00013.png

  四.文件的写入
  write("str")                # 将字符串写入文件
  writelines("["hello","world"]")        # 将序列的每个元素写入文件;
DSC00014.png

DSC00015.png

  五.文件的其它操作
  1.f.seek(偏移量,选项)   
  偏移量,如果为正数,代表向右偏移;如果为负数,代表向左偏移;
  选项,如果为0,指针指向文件开始;
  如果为1,指针指向当前位置;
  如果为2,指针指向文件末尾;
  
  
  2.f.flush()        提交对文件的修改;
  六.文件的几个注意点:
  1.文件对象是可迭代数据类型,可以通过for遍历文件的内容;
DSC00016.png

  2.with open("filename") as f:通过这种方法来避免用户忘记关闭文件的问题;不用写f.close()
DSC00017.png

运维网声明 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-549679-1-1.html 上篇帖子: Python-字典 下篇帖子: python中pip的安装
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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