博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python文件处理--文件的读写
阅读量:5332 次
发布时间:2019-06-14

本文共 1926 字,大约阅读时间需要 6 分钟。

import chardet  #chardet模块预测打开文本字符的编码# f = open(file='C:/Users/jeep-peng zhang/Desktop/23.txt', mode='r',encoding='utf-8') 文本模式读取f=open('C:/Users/jeep-peng zhang/Desktop/23.txt','rb',)#二进制模式读取stat = f.read()# f.close()print(stat.decode("gb2312"))#decode['其他'-----转成unicode] ,encode[unicode----转成gb2312]print(chardet.detect(stat))

一、文件的读入知识点:

    1.文件的读模式 open(file="打开文件路径",mode='打开模式',encoding='编码')

    2.‘r’模式为文本读取模式,‘rb’模式为二进制读取模式,主要用于网络传输

    3.chardet模块 可以预测打开文本的编码类型(在‘rb’二进制模式下使用)

    4.循环

f = open('C:/Users/jeep-peng hang/Desktop/23.txt','r',encoding='gbk')stat = f.read()f.close()for line in stat:    print(stat)#出现的情况是一个一个字符的打印。 #========================================================== 

 f = open('C:/Users/jeep-peng zhang/Desktop/23.txt','r',encoding='gbk')

 for line in f:
 print(line)#出现的情况是行的打印。中间会隔一行。

 二、文件的写入知识点:

1.‘w’模式是创建模式,如果在原来的文件上创建会删除原来的内容(注意!)

# 文件的写入# f=open('C:/Users/jeep-peng zhang/Desktop/33.txt','w',encoding='utf-8')f=open('C:/Users/jeep-peng zhang/Desktop/34.txt','wb')f.write('大家好我是我写的!'.encode('gbk')) #以二进制的模式写入需要编码f.close()

2.‘a’或‘ab’追加模式 需要使用\n 让文件重启一行重写

f=open('C:/Users/jeep-peng zhang/Desktop/23.txt','ab')f.write('\n大家好我是我写的的的!'.encode('gbk')) #以二进制的模式写入需要编码f.close()

 三、混合模式:‘r+’

f=open('C:/Users/jeep-peng zhang/Desktop/23.txt','r+',encoding='gbk')#混合模式stn = f.read()print('con',stn)f.write('\n卧室的') #以二进制的模式写入需要编码f.close()

3.1.f.read()中读了一次后,光标会移动到最后,再次读的话无法再次读取打印出内容。

3.2 f.flush()将内存里的存储的内容强制刷新到硬盘里面

3.3f.readline() 单行读取内容,一行一行的读取内容,f.tell()方法显示当前的光标位置,f.seek(0)返回到最开始的光标位置。f.seek()和f.tell()都是以字节数来读取,f.read()是按照字符数来读取。

f.tell() #按照字符数读取170f.seek(0)#按照字符数读取0f.readline()'年罚没30亿!银行业案件高发态势得到遏制\n'

f.seek(0)

0
f.seek(6)
6
f.read(6)
'30亿!银行'

 

 3.4  f.truncate()从当前位置截断(在'r+')模式下使用,例子:

'年罚没30亿!银行业案件高发态势得到遏制\n'
f.truncate(4)从最开始往后4个字符开始截断:(以字节数来读取)
f.seek(0)0f.seek(6)6f.truncate()6f.seek(0)0f.read()'年罚没'f.seek(2)2f.truncate(4)4最后显示:年罚

 

转载于:https://www.cnblogs.com/jeepzp/p/8227825.html

你可能感兴趣的文章
[简讯]phpMyAdmin项目已迁移至GitHub
查看>>
【题解】 bzoj1597: [Usaco2008 Mar]土地购买 (动态规划+斜率优化)
查看>>
css文本溢出显示省略号
查看>>
git安装和简单配置
查看>>
fat32转ntfs ,Win7系统提示对于目标文件系统文件过大解决教程
查看>>
Awesome Adb——一份超全超详细的 ADB 用法大全
查看>>
shell cat 合并文件,合并数据库sql文件
查看>>
Android 将drawable下的图片转换成bitmap、Drawable
查看>>
介绍Win7 win8 上Java环境的配置
查看>>
Linux设置环境变量的方法
查看>>
构建自己的项目管理方案
查看>>
利用pca分析fmri的生理噪声
查看>>
div水平居中且垂直居中
查看>>
epoll使用具体解释(精髓)
查看>>
AndroidArchitecture
查看>>
安装Endnote X6,但Word插件显示的总是Endnote Web"解决办法
查看>>
python全栈 计算机硬件管理 —— 硬件
查看>>
大数据学习
查看>>
简单工厂模式
查看>>
Delphi7编译的程序自动中Win32.Induc.a病毒的解决办法
查看>>