Python3中文件处理
1、txt,xls,doc等文件的使用
f=open(“filename”,”w”) 打开一个用于写入的文件,要写入内容时使用f.write(“内容”)
f=open(“filename”,”r”) 打开一个用于读的文件,读时使用f.read(),返回读取的到的字符串;
f=open(“filename”,”a”) 打开的文件既可用于读,也可用于写;
注:以上方式打开的文件读取出来的内容是字符串,写入的时候也必须全都是字符串;
2、pickle模块
pickle提供了从python程序中保存数据最简单的方法,原理是直接将数据以二进制进行保存,可以将数据原封不动的保存和读取;但如果加载不可信源有安全危险;
以gzip压缩的文件都以一个特定的魔数引导。
f=open(filename,"wb") #读取用"rb",追加用"ab",还有"rb+","wb+","ab+"表示可读可写;
pickle.dump(data,fh,pickle.HIGHEST_PROTOCOL)#pickle文件的写入方法
读取可用pickle.load(fh)
3、文件对象属性与方法
f.close() 关闭文件对象f,并将属性f.close设置为True;
f.close 文件已关闭,则返回True;
f.encoding byte与str之间进行转换时使用的编码;
f.fileno() 返回底层文件的文件描述符;
f.flush() 清空文件对象;
f.isatty() 如果文件对象与控制台关联,就返回True;
f.mode 文件对象打开时使用的模式;
f.name 文件对象f的文件名(如果有);
f.newlines 文本文件f中的换行字符串的类型;
f.__next__() 返回文件对象f的下一行;
f.peek(n) 返回n个字节,而不移动文件指针的位置;
f.readable() 如果f已经打开等待读取,则返回True;
f.read(count) 从文件对象f中读取至多count个字节,如果没有指定count,就读取从当前文件指针直到最后的每个字节,以二进制模式时,返回bytes对象;以文件模式时,返回str对象;
f.readinto(ba) 将至多len(ba)个字节读入到bytearray ba中,并返回读入字节数,如果在文件结尾,就为0;
f.readline(count) 读取下一行,包括\n;
f.readlines(sizehint) 读入到文件结尾之前的所有行,并以列表形式返回;
f.seek(offset,whence) 如果没有给定whence,或其为os.SEEK_SET,就按给定的offset移动文件指针...
f.seekable() 如果f支持随机存取,就返回True;
f.tell() 返回当前指针位置;
f.truncate(size) 截取文件到当前文件指针所在位置,如果给定size,就到size大小处;
f.writable() 如果f是为写操作而打开的,就返回True;
f.write(s) 将文本对象s写入到文件;
f.writelines(seq) 将对象序列写入到文件;
Python3中文件处理的更多相关文章
- python3中文件/IO编程
python3的文件操作可谓是我见过所有语言中最舒服的,那我们来一起看一下py3中的文件操作. 1:文件的打开方式有以下几种: 注:以上图表参考菜鸟教程 2:定位读写文件 f = open(&quo ...
- python3中文件的读与写
Python open() 函数用于打开一个文件,并返回文件对象,在对文件进行处理过程都需要使用到这个函数,如果该文件无法被打开,会抛出错误 完整语法:open(file, mode='r', buf ...
- python3中文件操作及编码
#之前一直没明白文件处理中的w和wb的区别到底是什么,#在看过视频后才知道,原来在linux里面是没有区别的,#但是在windows里面就能够看出区别来了#下面来个例子: with open(&quo ...
- 把模块有关联的放在一个文件夹中 在python2中调用文件夹名会直接失败 在python3中调用会成功,但是调用不能成功的解决方案
把模块有关联的放在一个文件夹中 在python2中调用文件夹名会直接失败在python3中调用会成功,但是调用不能成功 解决办法是: 在该文件夹下加入空文件__init__.py python2会把该 ...
- Python3 中codecs进行文件的读取
简单的概念与说明 编码(动词):按照某种规则(这个规则称为:编码(名词))将"文本"转换为"字节流".而在python 3中则表示:unicode变成str 解 ...
- Python3中使用PyMySQL连接Mysql
Python3中使用PyMySQL连接Mysql 在Python2中连接Mysql数据库用的是MySQLdb,在Python3中连接Mysql数据库用的是PyMySQL,因为MySQLdb不支持Pyt ...
- python3 中mlpy模块安装 出现 failed with error code 1的决绝办法(其他模块也可用本方法)
在python3 中安装其它模块时经常出现 failed with error code 1等状况,使的安装无法进行.而解决这个问题又非常麻烦. 接下来以mlpy为例,介绍一种解决此类安装问题的办法. ...
- Windows系统下python3中安装pyMysql
python2和python3是不兼容的,在py2中,链接数据库使用的是mysqldb,但在py3中是不能用的. 解决办法就是在py3中数据库使用的模块是pyMysql. 在dos窗口中安装第三方库会 ...
- python3中的编码与解码(超好理解)
编码和解码是针对数据而言的,数据能干什么呢?无非就是用来显示,储存和传输的: 储存和传输数据当然是希望数据越小越好,所以发明了utf-8这种数据编码显示:它智能将英文用一个字节表示,欧洲的字符用两个字 ...
随机推荐
- .NET 通过 Autofac 和 DynamicProxy 实现AOP
什么是AOP?引用百度百科:AOP为Aspect Oriented Programming的缩写,意为:面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术.实现AOP主要由两 ...
- Lists, Maps and Sets in Java
ArrayList vs LinkedList vs Vector From the hierarchy diagram, they all implement List interface. The ...
- 当KDS晶振遇上爱普生晶振国内生产厂家该如何抉择?
当KDS晶振遇上爱普生晶振国内生产厂家该如何抉择? 全球做晶振行业的公司有很多,单说深圳一个城市就有几十上百家正规的晶振厂家,深圳市金洛电子就是其中之一.我们不光代理日本和台湾多家排得上名 ...
- 2D游戏开发(1)
<外星人入侵> 通过pygame,入门python的2D游戏开发过程,通过教材制作一个打外星人游戏. 1.函数 run_game() import sys import pygame de ...
- node--更新数据库问题
昨天测试blog的comment功能,在新增comment相关的代码之后,重启应用,出现Cannot call method 'forEach' of undefined .反复核对代码,都没发现异常 ...
- VR全景智慧城市——宣传再华丽,不如用户亲身参与
在当今社会上,VR和AI已经成为黑科技的代名词了.同样都是很热门的科技,但是它们的出场方式却差距不小.AI的出场方式是很有科技范,而VR的出场方式却是土豪气十足. 营销是什么,是通过制造爆点,用爆点实 ...
- 源代码安装软件-MySQL
一.源码安装 1.经典的源代码安装三步曲: 1.编译前的配置 ./configure 2.编译 make 3.安装 make install 2.源代码软件安装步骤: 1.下载软件包 2.校验软件包 ...
- java实现文件批量导入导出实例(兼容xls,xlsx)
1.介绍 java实现文件的导入导出数据库,目前在大部分系统中是比较常见的功能了,今天写个小demo来理解其原理,没接触过的同学也可以看看参考下. 目前我所接触过的导入导出技术主要有POI和iRepo ...
- 跟着刚哥深入学maven
前言:目前所有的项目都在使用maven,可是一直没有时间去整理学习,这两天正好有时间,好好的整理一下. 一.为什么使用Maven这样的构建工具[why] ① 一个项目就是一个工程 如果项目非常庞大,就 ...
- JS 使用 splice() 对数组去重
一 问题 有如下 js 数组 connect_clients,需要在去掉所有元素中 user_id, goods_id 这两者的值都相同的元素. [ { id: 'eff040fb-92bc-4f24 ...