python-文件读写操作
打开文件:
f=open('test.txt',mode='r',encoding='utf-8')
参数1 文件名,若非当前路径,需指出具体路径
参数2 mode: 文件打开模式
r 只读模式【默认模式,文件必须存在,不存在则抛出异常】,文件指针放在文件开头
w,只写模式【不可读;不存在则创建;存在则清空内容】
x, 只写模式【不可读;不存在则创建,存在则报错】
a, 追加模式【可读; 不存在则创建;存在则只追加内容】,文件指针自动移到文件尾
"+" 表示可以同时读写某个文件
r+, 读写【可读,可写】,文件指针放在文件开头,文件存在不清空,逐步覆盖旧内容
w+,写读【可读,可写】,消除文件内容,然后以读写方式打开文件。
x+ ,写读【可读,可写】
a+, 写读【可读,可写】,以读写方式打开文件,并把文件指针移到文件尾
"b"表示以字节的方式操作,以二进制模式打开文件,而不是以文本模式。
rb 或 r+b
wb 或 w+b
要是写入文本 x=f.write('物理教师'.encode('utf-8'))
xb 或 w+b
ab 或 a+b
注:以b方式打开时,读取到的内容是字节类型,写入时也需要提供字节类型,不能指定编码
读取文件:
s=f.read() 读取文件的全部内容
c=f.read(3) 从当前位置开始读取的最大字符数
如果是二进制 可能是字节数
readline() 每次读取文件的一行,包括回车换行符,自动移动指针
返回值是''表示文件尾
readlines() #读取文件的所有行,返回一个字符串列表
['我是中国人我的籍贯在浙江\n', '我是物理教师\n', '我喜欢学习python']
文件的关闭:
f.close()
文件的写入:
x=f.write('物理教师')
参数 要写入的内容
返回值 写入的字符数
自动移动指针
特别注意:是覆盖不是插入
返回的是写入的字符长度
f.writelines(['李明','李秀艳','李雪倩']) 写入一序列的字符串.这一序列字符串可以是由迭代对象产生的,如一个字符串列表。
换行需要制定换行符 \n。
f.flush() #清空缓存,把缓存的内容写入磁盘文件,自动移动文件指针
文件的定位-指针:
f.seek(0) 移动指针
参数1 偏移量,单位是字节,不是字符
参数2 可选,默认值为 0。表示要从哪个位置开始偏移;0代表从文件开头开始算起,1代表从当前位置开始算起,2代表从文件末尾算起
文本文件只能是0;二进制文件能1能2
c=f.tell() 返回指针当前的位置
文件遍历:
f=open('test.txt',mode='r+',encoding='utf-8')
for s in f: #按行拆解
print(s,end='')
f.close()
最佳处理格式
with open('d:/ss/test.txt',mode='r+',encoding='utf-8') as f:
f.read()
print(c)
自动关闭
f.truncate(2) 删除指定字节后面的内容
从文件的首位置开始
参数 要保留的字节数
没有返回值
c=f.readable() 判断文件是否可读
可读 返回true
我理解的是readable只要文件不是EOF 就是可读的只不过有可能读不出内容了
c=f.writable() 判断文件是否可写
f.name 返回文件的路径 d:/ss/test.txt
天子骄龙
python-文件读写操作的更多相关文章
- python 文件读写操作(24)
以前的代码都是直接将数据输出到控制台,实际上我们也可以通过读/写文件的方式读取/输出到磁盘文件中,文件读写简称I/O操作.文件I/O操作一共分为四部分:打开(open)/读取(read)/写入(wri ...
- Python 文件读写操作实例详解
Python提供了必要的函数和方法进行默认情况下的文件基本操作.你可以用file对象做大部分的文件操作 一.python中对文件.文件夹操作时经常用到的os模块和shutil模块常用方法.1.得到当前 ...
- Python—文件读写操作
初识文件操作 使用open()函数打开一个文件,获取到文件句柄,然后通过文件句柄就可以进行各种各样的操作了,根据打开文件的方式不同能够执行的操作也会有相应的差异. 打开文件的方式: r, w, a, ...
- 一篇搞懂python文件读写操作(r/r+/rb/w/w+/wb/a/a+/ab)
关于文件操作的几种常用方式,网上已有很多解说,内容很丰富,但也因此有些杂乱复杂.今天,我就以我个人的学习经验写一篇详细又易懂的总结文章,希望大家看完之后会有所收获. 一.核心功能 ‘r’ ...
- python文件读写操作与linux shell变量命令交互执行
python对文件的读写还是挺方便的,与linux shell的交互变量需要转换一下才能用,这比较头疼! #coding=utf-8 #!/usr/bin/python import os impor ...
- python文件读写操作
操作文件时一般经历以下步骤: 打开文件 操作文件 1.打开文件: 文件句柄 = open('/path/to/file_name','pattern') pattern: r:只读模式,打开文件时默认 ...
- python 文件读写操作打开模式
‘r’:只读.该文件必须已存在. ‘r+’:可读可写.该文件必须已存在,写为追加在文件内容末尾. ‘rb’:表示以二进制方式读取文件.该文件必须已存在. ‘w’:只写.打开即默认创建一个新文件,如果文 ...
- python里文件读写操作
文件读写操作一种基本操作,但是里面也存在很多需要注意的问题,例如字符编码.内存缓冲.指针位置等等.如果忽视这些问题就会引起很多不必要的麻烦.简单来说,文件的读写分为几个过程: 打开文件,并定义操作文件 ...
- python(三)一个文件读写操作的小程序
我们要实现一个文件读写操作的小程序 首先我们有一个文件 我们要以"============"为界限,每一个角色分割成一个独立的txt文件,按照分割线走的话是分成 xiaoNa_1. ...
- excel、xls文件读写操作
python 常用的excel.xls文件读写操作,有两个模块 xlrd:读 xlwt:写 本次先写一个读的例子: class CaseData(object): def __init__(self, ...
随机推荐
- Codeforces Round #533 (Div. 2) C.思维dp D. 多源BFS
题目链接:https://codeforces.com/contest/1105 C. Ayoub and Lost Array 题目大意:一个长度为n的数组,数组的元素都在[L,R]之间,并且数组全 ...
- ocr智能图文识别 tess4j 图文,验证码识别
最近写爬虫采集数据,遇到网站登录需要验证码校验,想了想有两种解决办法 1,利用htmlunit,将验证码输入到swing中,并弹出一个输入框,手动输入验证码,这种实现方式,如果网站需要登录一次可以使用 ...
- docker cmd list
436 wget -qO- https://get.docker.com/ | sh 437 sudo apt-get update 438 sudo apt-get install -y docke ...
- HEOI2013 Segment
传说中的“李超树”. 大意:给你若干线段,试求横坐标x上的最上方一条线段的编号.无则输出零. 解:用线段树维护. 插入的时候保存自己这个区间上可能成为最大值的线段,被抛弃的则看情况下放. 查询时从最底 ...
- 第一篇-Git基础学习
学习网址: https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/0013758410 ...
- 神经网络中w,b参数的作用(为何需要偏置b的解释)
http://blog.csdn.net/xwd18280820053/article/details/70681750 可视图讲解神经元w,b参数的作用 在我们接触神经网络过程中,很容易看到就是这样 ...
- 【译】11. Java反射——动态代理
原文地址:http://tutorials.jenkov.com/java-reflection/dynamic-proxies.html 博主最近比较忙,争取每周翻译四篇.等不急的请移步原文网页. ...
- Day019--Python--反射
1. issubclass, type, isinstance issubclass 判断XXX类是否是XXX类的子类 type 给出XXX的数据类型. 给出创建这个对象的类 isinstance 判 ...
- 整合shiro出现【Correct the classpath of your application so that it contains a single, compatible version of org.quartz.Scheduler】
跑的时候出现错误: Description: An attempt was made to call the method org.quartz.Scheduler.getListenerManage ...
- 阿里面试:MYSQL的引擎区别
MyISAM是MySQL的默认数据库引擎(5.5版之前),由早期的ISAM(Indexed Sequential Access Method:有索引的顺序访问方法)所改良.虽然性能极佳,但却有一个缺点 ...