属于python文件的操作有_Python的文件操作
1、初始文件操作
1、使用python读写文件使用open()函数获取文件句柄,就可以操作文件了,根据打开方式不同能执行的操作也不同。
打开方式有:
r、w、a、r+、w+、a+、rb、wb、ab、r+b、w+b、a+b,默认用的是r模式
2、只读操作(r、rb)
2.1、只读模式r
#文件的路径分隔符使用/,在windows下和linux都可以生效
f = open("C:/Users/18811/Desktop/部署用到的地址.txt",mode="r",encoding="ANSI")
content=f.read()
f.close()
2.2、只读模式rb,下面rb的方式用于读取非文本文件时,如MP3、图像、视频等,这种文件无法直接显示,rb模式下不能选择encoding
f = open("aa.mp3",mode="rb")
content=f.read()
f.close()
3、读取文件的方法
read(n)读取n个字符,如果再次读取会从当前位置继续读取,不会从头读取,如果是rb模式下,则会读取第n个字节
read()将读取全部内容,弊端:占内存,如果文件过大,容易使内存崩溃
readLine()取一行数据,但每次结尾都有\n或空格,所以要用strip()方法去掉
readLines()将每一行形成一个元素,放到一个列表中,但此方法也会极大耗内存,故不推荐#最好的读取方式,循环读取不会占内存
f = open("C:/Users/18811/Desktop/部署用到的地址.txt",mode="r",encoding="ANSI")for i inf:print(i.strip("\n"))
f.close()
4、写模式(w、wb)
4.1、写的时候,如果没有文件,会创建文件,如果文件存在,则会将原文件内容删除,再重新写入新的内容
f = open("C:/Users/18811/Desktop/你好.txt",mode="w",encoding="UTF-8")
f.write("你好,我是新搬家的阿里\nNICE TO MEET YOU!")
f.flush()
f.close()
4.2、wb模式,可以不指定打开文件的编码,但写文件时,必须将字符串转成UTF-8的bytes数据
f = open("⼩小娃娃", mode="wb")
f.write("⾦金金⽑毛狮王".encode("utf-8"))
f.flush()
f.close()
5、追加模式(a、ab)
5.1、追加模式下,写入的内容会追加到文件的结尾,追加模式下,如果没有文件也会先创建
f = open("C:/Users/18811/Desktop/你好.txt",mode="a",encoding="UTF-8")
f.write("你好,我是新搬家的阿里\n我很喜欢你")
f.flush()
f.close()
5.2、rb模式下
f = open("C:/Users/18811/Desktop/你好.txt",mode="ab")
f.write(b'\xe4\xbd\xa0\xe5\xa5\xbd\xef\xbc\x8c\xe6\x88\x91\xe6\x98\xaf')
f.flush()
f.close()
6、读写模式(r+、r+b),对于读写模式, 必须是先读, 因为默认光标是在开头的, 准备读取的, 当读完了之后再进行写入, 我们以后使用频率最高的模式就是r+
f = open("⼩小娃娃", mode="r+", encoding="utf-8")
content=f.read()
f.write("麻花藤的最爱")print(content)
f.flush()
f.close()
#结果:正常的读取之后, 写在结尾
#注意r+模式下. 必须是先读取. 然后再写入
7、写读(w+, w+b),先将所有的内容清空,然后写入,最后读取,但是读取的内容是空的, 不常用
f = open("⼩小娃娃", mode="w+", encoding="utf-8")
f.write("哈哈")
content=f.read()print(content)
f.flush()
f.close()
8、追加读(a+),a+模式下, 不论先读还是后读. 都是读取不到数据的.
f = open("⼩小娃娃", mode="a+", encoding="utf-8")
f.write("⻢马化腾")
content=f.read()print(content)
f.flush()
f.close()
9、其他的一些方法
1、seek(n) 光标移动到n位置, 注意, 移动的单位是byte. 所以如果是UTF-8的中文部分要是3的倍数.
移动到开头: seek(0)
移动到结尾: seek(0,2) seek的第二个参数表示的是从哪个位置进行偏移, 默认是0, 表
示开头, 1表示当前位置, 2表示结尾2、tell()方法 使用tell()可以帮我们获取到当前光标在什么位置3、truncate() 截断文件,删掉光标后面的所有内容
深坑请注意: 在r+模式下. 如果读取了内容. 不论读取内容多少. 光标显示的是多少. 再写入或者操作文件的时候都是在结尾进行的操作.
所以如果想做截断操作,记住了, 要先挪动光标,挪动到你想要截断的位置,然后再进行截断关于truncate(n), 如果给出了n. 则从开头进行截断, 如果不给n, 则从当前位置截断. 后面的内容将会被删除
10、修改文件以及另一种打开文件的方式,文件修改: 只能将文件中的内容读取到内存中, 将信息修改完毕, 然后将源文件删除, 将新文件的名字改成老文件的名字
importos
with open("小娃娃", mode="r", encoding="utf-8") as f1,\
open("小娃娃_new", mode="w", encoding="UTF-8") as f2:for line inf1:
new_line= line.replace("大白梨", "冰糖葫芦")
f2.write(new_line)
os.remove("小娃娃") #删除源⽂文件
os.rename("小娃娃_new", "小娃娃") #重命名新⽂文件
属于python文件的操作有_Python的文件操作相关推荐
- python文件读取与输出_python基本文件操作(文件输入和输出)
文件输入输出中常用的文件对象方法: open: 返回一个新的文件对象,调用该对象的上的方法可对文件进行任何操作 readline: 读取一行数据包括结尾的换行符在内 write: 将数据写入文件中 c ...
- python对文件的操作模式_python对文件的操作
一.python中对文件.文件夹操作时经常用到的os模块和shutil模块常用方法. 1.得到当前工作目录,即当前Python脚本工作的目录路径: os.getcwd() 2.返回指定目录下的所有文件 ...
- python获取当前路径导包_python 通过文件夹导入包的操作
通过文件夹导入包要求每个目录下都有一个__init__.py文件,此文件可空白.也可不空.a@ubuntu:~/Desktop$ tree myp myp ├── a │ ├── b.py │ └── ...
- python在文件中写入字典_python初学--文件操作、字典
文件读写 1.先打开文件 2.读取/写入内容 3.保存文件 文件的open模式有三种 1.w 写模式,它是不能读的 只要用w打开文件,文件中的东西都会被清空 w+, 写读模式,只要沾上w 就会清空原来 ...
- python对文件操作实例_Python对文件文件夹的操作实例
代码背景: 最近老看视频教程,我需要知道一部教程,需要多久能看完.win下文件夹里,多选视频文件,可以直接在属性中查看一共需要的时间.不过在网上下载的很多视频教程每一章都分布在不同的文件夹下,无法快捷 ...
- python不是内部文件别太任性_Python对文件的操作
Python的文件操作 什么是IO 在计算机中 I/O 是指 Input/Output,即 Stream (流)的输入和输出,输入和输出是相对于内存来说的.程序运行时数据都驻留在在内存当中,由 CPU ...
- python读取文件需要的异常处理_Python基础:文件的简单读取和操作以及异常处理...
Python提供了直接获取文件对象的方法,方便我们直接操作文件. 下面我们就使用Python对文件的读取.写入以及数据存储进行整理说明,以及Python对异常的处理. 获取文件对象 打开一个txt文件 ...
- python基金会主席入门教程_Python基金会-文件IO操作,python,基础
函数 功能 open 打开文件 read 读取文件 write 写文件 close 关闭文件 readline 行读取 readlines 多行读取 open方法 open方法: 打开一个文件,返回一 ...
- python文件读写方法手机_python读取文件—txt文件常用读写操作
txt文件的打开的两种方式: f = open("data.txt","r") #设置文件对象 f.close() #关闭文件 为了方便,避免忘记close ...
最新文章
- 基础数据类型之集合和深浅copy,还有一些数据类型补充
- 用Python建立最简单的web服务器
- 贷款违约预测--赛题理解
- 修改android virtual device路径
- 大数据WEB阶段(十二)会话技术、Cookie、Session及两者的区别
- python正则表达式模块_Python正则表达式模块(re模块)
- c语言马秀丽,C语言程序计 清华大学出版社 马秀丽 刘志妩科后习题9答.doc
- python 通过ip获取城市_python 根据ip获取地理位置
- java 控制台输入字符串_Java控制台输入字符串及字符串比较
- ipv6寻址_有类和无类寻址:IPV4寻址| 计算机网络
- Pycharm使用秘籍
- 收藏 | 深度学习调参有哪些技巧?
- delphi 同盘移动文件所用时间测试(文件大小约6,083,545,088 字节)
- Java设计模式学习记录-单例模式
- 李宏毅机器学习——结构化学习(二)
- 几个你可能不了解的CSS单位
- AI电话机器人源码买断 后私有云部署如何上线?
- 摩托罗拉v8对讲机驱动软件_摩托罗拉驱动下载安装教程
- 超级鹰平台识别boss验证码
- 反激开关电源的工作原理