首页 技术 正文
技术 2022年11月21日
0 收藏 757 点赞 2,449 浏览 1991 个字

内容大纲

  一:文件的基本操作,

    >常见问题

    >encoding

    >绝对路径和相对路径的

  二:文件的读写追加相关操作

    >读(r, r+ ,rb,r+b)

    >写(w,w+,wb,w+b)

    >追加(a,a+,ab,a+b)

  三:文件相关的操作方法

  四:文件的常规修改方式

一:文件的基本操作,

    >常见问题

      >>1 文件路径错误,比如 \把需要的内容转意了 比如\a \n’

       解决方法,在字符串前面增加r  

# with open('f:\a.txt','r',encoding='utf-8') as f:
# f.read()
# OSError: [Errno 22] Invalid argument: 'f:\x07.txt'
# with open(r'f:\a.txt','r',encoding='utf-8') as f:
# f.read()

    >encoding

      encoding的作用只是强调,

    >绝对路径和相对路径的

      >>1 绝对路径:指的是具体到哪个文件夹的文件

      >>2 相对路径:指的是当前操作的文件夹的目录地址

  二:文件的读写追加相关操作

    >读(r, r+ ,rb,r+b)

      >r  读, read()  返回str    # read(  字符) 1 代表一个字符.2 带表两个字符

         readline()  返回str

         readlines()  返回list

         for 变量 i 句柄 :   返回str    如果文件很大需要使用for 循环,这样不会造成内容消耗

 # 4  读  (r ,rb ,r+ r+b)
# with open('1.txt','r',encoding='utf-8') as f:
# contect =f.read()
# print(contect)
# with open('1.txt','r',encoding='utf-8') as f:
# contect =f.read()
# print(contect)
# with open('f:/msg.jpg','rb') as f:
# contect =f.read()
# print(contect)
#读写, 需要先读在写,如果先写在读的情况下需要,调整光标的位置
# 利用seek() 调整光标位置. (0)代表开头 (0,2)代表结尾
# with open('1.txt','r+',encoding='utf-8') as f :
# f.write('汉子')
#
# l =f.read()
# print(l)

    >写(w,w+,wb,w+b)

    write()

      

    >追加(a,a+,ab,a+b)

    如果有源文件,那么就在文件后面追加内容, 如果没有内容那么就新创建文件

#5 追加模式 a # 本身的内容不删除,只是在最后增加
#如果没有这个文件夹,那么则创建文件,有的话则追加内容
# with open('1.txt','a',encoding='utf-8') as f:
# f.write('这是追加的内容')

  三:文件相关的操作方法

# readable  判断这个文件是否可以读
# writable 判断这个文件是不是可写
# flush 强制保存, 相当于Ctrl+s
# tell 返回光标位置
# seek 调整光标位置 有两个参数 ,第一参数是光标位置,第二个1 中间 (0,2)是末尾
# truncate 截断内容. 打印截断之前的内容, 按照字节截断 只能在写的模式下进行 进行,'w' 下没有意义

  四:文件的常规修改方式

 

# 5把新文件名字修改成旧文件
import os
with open('1.txt','r',encoding='utf-8') as f1 ,open('1bak.txt','a',encoding='utf-8') as f2:
old_contect =f1.read()
new_contect =old_contect.replace('a','好吃')
f2.write(new_contect)
os.remove('1.txt')
os.rename('1bak.txt','1.txt')用for 循环可以 可降低内存消耗.with open('1.txt','r',encoding='utf-8') as f1 ,open('1bak.txt','a',encoding='utf-8') as f2:
# old_contect =f1.read()
# new_contect =old_contect.replace('a','好吃')
# f2.write(new_contect)
# for line in f1:
# new_line = line.replace('好吃','呵呵')
# f2.write(new_line)
# os.remove('1.txt')
# os.rename('1bak.txt','1.txt')

 

 

上一篇: Python 资源大全
下一篇: ui7
相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:9,111
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,584
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,431
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,203
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:7,838
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:4,922