python 基础知识6-文件操作
1、只读文件
#以文本打开文件'r'
f = open('C:\\Users\\Administrator\\Desktop\\Python\\f.txt',mode='r',encoding='utf-8')
content = f.read()
print(content)
f.close()#中国是个伟大的国家。 #以二进制形式打开文件'rb'
f = open('C:\\Users\\Administrator\\Desktop\\Python\\f.txt',mode='rb')
content = f.read()
print(content)
f.close()#b'\xe4\xb8\xad\xe5\x9b\xbd\xe6\x98\xaf\xe4\xb8\xaa\xe4\xbc\x9f\xe5\xa4\xa7\xe7\x9a\x84\xe5\x9b\xbd\xe5\xae\xb6\xe3\x80\x82' '''
'C:\\Users\\Administrator\\Desktop\\Python\\f.txt':路径(不能用'\'!可以用'\\'或'/')
mode:定义操作方式.
encoding:声明,此次打开文件使用什么编码本。一般来说:你的文件用什么编码保存的,就用什么方法打开,一般都是用utf-8(有些使用的是gbk).
f.read():操作文件,比如读文件,给文件写内容,等等,都必须通过文件句柄进行操作.
f.close():关闭文件.
'''
2、只写文件
#对于w:没有此文件就会创建文件。
f = open('C:\\Users\\Administrator\\Desktop\\Python\\t.txt',mode = 'w',encoding= 'utf-8')
f.write('寂*凉')
f.close()#寂*凉 #若有此文件,先将源文件全部清除,再写。
f = open('C:\\Users\\Administrator\\Desktop\\Python\\t.txt',mode = 'w',encoding= 'utf-8')
f.write('5月9号')
f.close()#5月9号
#wb:以二进制写入,需用encode()转换
f = open('C:\\Users\\Administrator\\Desktop\\Python\\t.txt',mode = 'wb')
f.write('5月9号'.encode('utf-8'))
f.close()
#'a':追加写
f = open('C:\\Users\\Administrator\\Desktop\\Python\\t.txt',mode = 'a',encoding= 'utf-8')
f.write('21度')
f.close()#5月9号21度
#'ab':以二进制追加写
f = open('C:\\Users\\Administrator\\Desktop\\Python\\t.txt',mode = 'ab')
f.write('适中'.encode('utf-8'))
f.close()#5月9号21度适中
3、读写
#'r+'读写
f = open('C:\\Users\\Administrator\\Desktop\\Python\\t.txt',mode = 'r+',encoding ='utf-8')
print(f.read())#5月9号21度适中
f.write('5月9日')
f.close() 注意:如果在读写模式下,先写后读,那么文件就会出问题,因为默认光标是在文件的最开始,要是先写,则写入的内容会讲原内容覆盖掉,直到覆盖到写完的内容,然后在后面开始读取。
4、光标控制:seek
seek(n)光标移动到n位置,注意: 移动单位是byte,所有如果是utf-8的中文部分要是3的倍数
移动到开头:seek(0)
移动到结尾:seek(0,2) seek的第二个参数表示的是从哪个位置进行偏移,默认是0,表示开头,1表示当前位置,2表示结尾
f = open('C:\\Users\\Administrator\\Desktop\\Python\\f.txt',mode='r+',encoding='utf-8')
f.seek(0) # 光标移动到开头
content = f.read()# 读取内容, 此时光标移动到结尾
print(content)#中国是个伟大的国家。
f.seek(0) # 再次将光标移动到开头
f.seek(0,2) # 将光标移动到结尾
content1 = f.read()# 读取内容. 什么都没有
print(content1)#
f.seek(0)
f.write('确实')
content2 = f.read()# 写入信息. 此时光标在6 中文2 * 3个 = 6
print(content2)#是个伟大的国家。
f.close()
5、功能详解
#(确实是个伟大的国家。)
#read(n):读出的字符数
f = open('C:\\Users\\Administrator\\Desktop\\Python\\f.txt',mode='r+',encoding='utf-8')
content = f.read(3)
print(content)#确实是
f.close() #seek(n):按照字节定光标的位置
f = open('C:\\Users\\Administrator\\Desktop\\Python\\f.txt',mode='r+',encoding='utf-8')#(确实是个伟大的国家。)
f.seek(3)
content = f.read()
print(content)#实是个伟大的国家。
f.close() #tell():获取当前光标的位置
# f = open('C:\\Users\\Administrator\\Desktop\\Python\\f.txt',mode='r+',encoding='utf-8')
f.seek(3)
print(f.tell())#
f.close() f = open('C:\\Users\\Administrator\\Desktop\\Python\\f.txt',mode='a+',encoding='utf-8')
f.write('真的')
count = f.tell()
f.seek(count-6)
print(f.read())#真的
f.close() #readline:一行一行读
f = open('C:\\Users\\Administrator\\Desktop\\Python\\f.txt',mode='r+',encoding='utf-8')
print(f.readline())
f.close() #readlines:每一行当成列表中的一个元素,添加到list中
f = open('C:\\Users\\Administrator\\Desktop\\Python\\f.txt',mode='r+',encoding='utf-8')
count = f.readlines()
for i in count:
print(i.strip())
f.close()
6、打开文件另一种方式with open
优点:(1):用with上下文管理这种方式,它会自动关闭文件句柄。
(2):一个with 语句可以操作多个文件,产生多个文件句柄。
with open('C:\\Users\\Administrator\\Desktop\\Python\\f.txt',mode='r+',encoding='utf-8') as f,\
open('C:\\Users\\Administrator\\Desktop\\Python\\t.txt',mode='r+',encoding='utf-8') as f1:
print(f.read())
print(f1.read())
python 基础知识6-文件操作的更多相关文章
- Python基础知识(八)----文件操作
文件操作 一丶文件操作初识 ###f=open('文件名','模式',编码): #open() # 调用操作系统打开文件 #mode #对文件的操作方式 #encoding # 文件的编码格式 存储编 ...
- python基础知识-day7(文件操作)
1.文件IO操作: 1)操作文件使用的函数是open() 2)操作文件的模式: a.r:读取文件 b.w:往文件里边写内容(先删除文件里边已有的内容) c.a:是追加(在文件基础上写入新的内容) d. ...
- python基础知识六 文件的基本操作+菜中菜
基础知识六 文件操作 open():打开 file:文件的位置(路径) mode:操作文件模式 encoding:文件编码方式 f :文件句柄 f = open("1.t ...
- 第三章:Python基础の函数和文件操作实战
本課主題 Set 集合和操作实战 函数介紹和操作实战 参数的深入介绍和操作实战 format 函数操作实战 lambda 表达式介绍 文件操作函数介紹和操作实战 本周作业 Set 集合和操作实战 Se ...
- python基础3之文件操作、字符编码解码、函数介绍
内容概要: 一.文件操作 二.字符编码解码 三.函数介绍 一.文件操作 文件操作流程: 打开文件,得到文件句柄并赋值给一个变量 通过句柄对文件进行操作 关闭文件 基本操作: #/usr/bin/env ...
- Python基础7:文件操作
[ 文件操作] 1 对文件操作流程 打开文件,得到文件句柄并赋值给一个变量 通过句柄对文件进行操作 关闭文件 现有文件如下: 昨夜寒蛩不住鸣. 惊回千里梦,已三更. 起来独自绕阶行. 人悄悄,帘外月胧 ...
- python学习笔记-(七)python基础--集合、文件操作&函数
本节内容 1.集合操作 2.文件操作 3.字符编码与转码 4.函数操作 1.集合操作 集合是一个无序的.不重复的数据组合: 1.1 常用操作 它的作用是: 1)自动去重:列表变成集合,自动去重: &g ...
- Python自动化 【第三篇】:Python基础-集合、文件操作、字符编码与转码、函数
1. 集合 1.1 特性 集合是一个无序的,不重复的数据组合,主要作用如下: 去重,把一个列表变成集合实现自动去重. set可以看成数学意义上的无序和无重复元素的集合,因此,两 ...
- Python基础-week03 集合 , 文件操作 和 函数详解
一.集合及其运算 1.集合的概念 集合是一个无序的,不重复的数据组合,它的主要作用如下 *去重,把一个列表变成集合,就自动去重了 *关系测试,测试两组数据之前的交集.并集.差集.子集.父级.对称差集, ...
- python基础学习笔记——文件操作
文件操作 初始文件操作 使用Python来读写文件是非常简单的操作,我们使用open()函数来打开一个文件,获取到文件句柄,然后通过文件句柄就可以进行各种各样的操作了 根据打开方式的不同能够执行的操作 ...
随机推荐
- selenium获取多窗口句柄并一切换至原窗口句柄(三个窗口)
网上有很多是selenium基于python来获取两个窗口句柄与切换,本文实现用python+selenium获取多窗口句柄并一一切换至原窗口句柄(三个窗口),且在每个窗口下进行一个搜索或翻译,然后截 ...
- WPF中在Gmap.net中将Marker动起来
前一段时间说过一篇绘制极坐标的,这段时间对它进行了改造已经今非昔比了,功能实现了很多,我目的是让Marker动起来,然后还会绘制Route,上篇也就是简单的绘制了Route,没有关于Marker的相关 ...
- linq详细案例
LINQ to SQL语句(1)之Where 适用场景:实现过滤,查询等功能. 说明:与SQL命令中的Where作用相似,都是起到范围限定也就是过滤作用的,而判断条件就是它后面所接的子句.Where操 ...
- 挑战全网最幽默的Vuex系列教程:第五讲 Vuex的小帮手
先说两句 前面已经讲完了 Vuex 下的 State.Getter.Mutation 及 Action 这四驾马车,不知道大家是否已经理解.当然,要想真正熟练掌握的话,还是需要不断的练习和动手实践才行 ...
- 数据挖掘入门系列教程(十点五)之DNN介绍及公式推导
深度神经网络(DNN,Deep Neural Networks)简介 首先让我们先回想起在之前博客(数据挖掘入门系列教程(七点五)之神经网络介绍)中介绍的神经网络:为了解决M-P模型中无法处理XOR等 ...
- Caused by:java.lang.ClassNotFoundException:org.apache.hadoop.yarn.util.Apps
错误原因 缺少hadoop-yarn.jar包. 导入jar包就好了~-~
- SESSION劫持
服务端和客户端之间是通过session(会话)来连接沟通.当客户端的浏览器连接到服务器后,服务器就会建立一个该用户的session.每个用户的session都是独立的,并且由服务器来维护.每个用户的s ...
- ERC20 Short Address Attack
ERC20 Short Address Attack 什么是ERC20 Application Binary Interface(ABI) ERC20 Short Address Attack 开始攻 ...
- 后缀数组SA
复杂度:O(nlogn) 注:从0到n-1 const int maxn=1e5; char s[maxn]; int sa[maxn],Rank[maxn],height[maxn],rmq[max ...
- flutter在2019年会有怎样的表现?
2019独角兽企业重金招聘Python工程师标准>>> Flutter的趋势 在移动端,受成本和效率的驱使,跨平台一站式开发慢慢成为一个趋势.从Hybird,RN,WEEX,Flut ...