python基础06--文件操作
1.1 文件操作
1、只读(r,rb) rb以bytes方式读文件
只写(w,wb)
追加(a,ab)
r+ 读写
w+ 写读
a+ 追加写读
以什么编码方式储存的文件,就用什么编码方式打开
默认使用r(只读)
有b,则打开是不需要指定编码方式
2、相对路径(从当前目录开始找) ../ 推荐使用
绝对路径
只读r
f = open(“d:/a.txt”,mode=’r’,encoding=’utf-8’)
content = f.read()
print(content)
f.close()
只写w 清空后再写入 ,没有文件就创建
f = open(“d:/a.txt”,mode=’r’,encoding=’utf-8’)
f.write(“wemon”)
f.flush()
f.close()
追加a 在原来基础上追加内容 ,没有文件就创建
f = open(“d:/a.txt”,mode=’a’,encoding=’utf-8’)
f.write(“wemon”)
f.flush()
f.close()
rb,wb,ab 处理的是非文本
只读rb
f = open(“d:/a.txt”,mode=’rb’,encoding=’utf-8’)
content = f.read()
print(content.decode(“utf-8”)) #需要编码
f.close()
只读wb
f = open(“d:/a.txt”,mode=’rb’,encoding=’utf-8’)
f.write(“你好啊”.encode(“utf-8”)) 需要编码在写入
print(content.decode(“utf-8”))
f.close()
f.read()读是读的光标后面的内容
读写r+
默认光标在文件开头,先读后写光标在最后 先写光标在最前面,覆盖写
f = open(“d:/a.txt”,mode=’r+’,encoding=’utf-8’)
f.read()
f.write(“你好啊”)
f.flush()
f.close()
写读w+ 不好用
w操作,会清空原来的内容
f = open(“d:/a.txt”,mode=’r+’,encoding=’utf-8’)
f.write(“你好啊”)
f.seek(0) 移动光标到文件首
s = f.read()
print(s)
f.close()
3、相关操作
神坑r+ 如果先读取,在写,写入的是末尾
在没有任何操作之前去进行写,在开头写
f = open(“d:/a.txt”,mode=’r+’,encoding=’utf-8’)
f.read(3) #从光标处读三个字符
f.write(“你好啊”) # 写入到末尾
f.flush()
f.close()
seek(n) 从开头光标移动到n位置,移动的单位是byte,所以如果是utf-8,中文需要是3的倍数,英文是1个byte
seek(0) 移动到开头
seek(0,2) 移动到结尾,seek第二个参数表示从哪个位置进行偏移,默认是0表示从开头,1表示当前位置,2表示结尾
f = open(“d:/a.txt”,mode=’r+’,encoding=’utf-8’)
f.seek(6) #移动6个字节,2个字
f.read(3) #从光标处读三个字符
f.seek(0) #光标回到开头
f.read(3) #从开头读三个
f.flush()
f.close()
4、tell() 当前光标的位置
5、文件修改 with as 不用关闭文件
import os
with open(“d:/a.txt”,mode=’r’,encoding=’utf-8’) as f1 ,
open(“d:/a.txt”,mode=’w’,encoding=’utf-8’) as f2:
#s = f1.read() #全部读取完后修改
#ss=s.replace(“肉”,”菜”)
#f2.write(ss) for line in f: #一行一行修改
s = line.replace(‘肉’,’菜’)
f2.write(s)
os.remove(“吃的”)
os.rename(‘吃的_副本’)
读 一行一行读 f.readline()
f= open(“file/test.txt”,mode=’r’,encoding=’utf-8’)
for line in f:
print(line)
f.close()

python基础06--文件操作的更多相关文章
- python基础篇(文件操作)
Python基础篇(文件操作) 一.初始文件操作 使用python来读写文件是非常简单的操作. 我们使用open()函数来打开一个文件, 获取到文件句柄. 然后通过文件句柄就可以进行各种各样的操作了. ...
- python基础之文件操作
对于文件操作中最简单的操作就是使用print函数将文件输出到屏幕中,但是这种操作并不能是文件保存到磁盘中去,如果下调用该数据还的重新输入等. 而在python中提供了必要的函数和方法进行默认情况下的文 ...
- Day3 Python基础学习——文件操作、函数
一.文件操作 1.对文件操作流程 打开文件,得到文件句柄并赋值给一个变量 通过文件句柄对文件进行操作 关闭文件 #打开文件,读写文件,关闭文件 http://www.cnblogs.com/linha ...
- python基础14_文件操作
文件操作,通常是打开,读,写,追加等.主要涉及 编码 的问题. #!/usr/bin/env python # coding:utf-8 ## open实际上是从OS请求,得到文件句柄 f = ope ...
- 【python基础】文件操作
文件操作目录 一 .文件操作 二 .打开文件的模式 三 .操作文件的方法 四 .文件内光标移动 五. 文件的修改 一.文件操作介绍 计算机系统分为:计算机硬件,操作系统,应用程序三部分. 我们用pyt ...
- python基础4文件操作
在磁盘上读取文件的 功能都是由操作系统来实现的,不允许普通的程序直接操作磁盘,所以读写文件就是请求操作系统打开一个文件对象(通常称为文件描述符),然后,通过操作系统提供的接口从这个文件对象中读取数据( ...
- Python基础 之 文件操作
文件操作 一.路径 文件绝对路径:d:\python.txt 文件相对路径:在IDEA左边的文件夹中 二.编码方式 utf-8 gbk... 三.操作方式 1.只读 r 和 rb 绝对路径的打开操作 ...
- Python基础--基本文件操作
全部的编程语言都一样,学完了一些自带的数据机构后,就要操作文件了. 文件操作才是实战中的王道. 所以,今天就来分享一下Python中关于文件的一些基本操作. open方法 文件模式 这个模式对于写入文 ...
- python基础(10):文件操作
1. 初识文件操作 使⽤python来读写⽂件是非常简单的操作.我们使⽤open()函数来打开⼀个⽂件,获取到⽂ 件句柄,然后通过⽂件句柄就可以进⾏各种各样的操作了,根据打开⽅式的不同能够执⾏的操 作 ...
- Python基础学习——文件操作、函数
一.文件操作 文件操作链接:http://www.cnblogs.com/linhaifeng/articles/5984922.html(更多内容见此链接) 一.对文件操作流程 打开文件,得到文件句 ...
随机推荐
- Cutting Bamboos(2019年牛客多校第九场H题+二分+主席树)
题目链接 传送门 题意 有\(n\)棵竹子,然后有\(q\)次操作,每次操作给你\(l,r,x,y\),表示对\([l,r]\)区间的竹子砍\(y\)次,每次砍伐的长度和相等(自己定砍伐的高度\(le ...
- Word 2016中公式不能自动斜体的解决方法
参考资料: 中文版 Office 数学公式默认不是斜体 为什么Word 2007中的公式编辑器字体不能自动倾斜 归纳总结 这个问题自Word 2007开始就存在,直至我目前用的Word 2016都没有 ...
- apache在linux下安装
yum安装 主流Linux系统版本基本上都集成了apache服务器httpd,我们可以通过如下命令来查看我们的操作系统上是否已经安装了apache服务器httpd rpm -qa | grep htt ...
- index获取子DOM对象在父DOM对象的内位置索引值
<script type="text/javascript"> $(function(){ var $p1=$('#id1 p:visible'); ...
- mysql之子查询、视图、事务及pymysql等
数据准备 CREATE TABLE `emp` ( `id` int(0) NOT NULL AUTO_INCREMENT, `name` varchar(10) NOT NULL, `gender` ...
- JDOJ 2197: 校门外的树
JDOJ 2197: 校门外的树 题目传送门 Description 某校大门外长度为L的马路上有一排树,每两棵相邻的树之间的间隔都是1米. 我们可以把马路看成一个数轴,马路的一端在数轴1的位置,另一 ...
- pycharm运行过程中pycharm控制台和python控制台之间的切换
有时候在调试(debug)python代码的时候,希望像matlab那样输入某一个变量以查看其值,这是需要把pycharm的console切换到python的console,以输入变量查看其值,点击那 ...
- docker删除镜像Error response from daemon: conflict: unable to remove repository reference
Docker无法删除images,由于是依赖container. 1.进入root权限 sudo su 2. 列出所有运行或没有运行的镜像 docker ps -a 3.停止containe ...
- L3865
一,写题 1,2^j 判断不了? 2,好像是有一个数据不对.. 3,debug是生命之源. 4,反正就对了30分
- python爬虫实例——爬取歌单
学习自<<从零开始学python网络爬虫>> 爬取酷狗歌单,保存入csv文件 直接上源代码:(含注释) import requests #用于请求网页获取网页数据 from b ...