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这种数据编码显示:它智能将英文用一个字节表示,欧洲的字符用两个字 ...
随机推荐
- javaWeb学习总结(11)- 监听器(Listener)在开发中的应用
监听器在JavaWeb开发中用得比较多,下面说一下监听器(Listener)在开发中的常见应用 一.统计当前在线人数 在JavaWeb应用开发中,有时候我们需要统计当前在线的用户数,此时就可以使用监听 ...
- [编织消息框架][netty源码分析]2 eventLoop
eventLoop从命名上看是专门处理事件 事件系统主要由线程池同队列技术组成,有以下几个优点 1.任务出队有序执行,不会出现错乱,当然前提执行线程池只有一个 2.解偶系统复杂度,这是个经典的生产者/ ...
- vue组件之间的通信以及如何在父组件中调用子组件的方法和属性
在Vue中组件实例之间的作用域是孤立的,以为不能直接在子组件上引用父组件的数据,同时父组件也不能直接使用子组件的数据 一.父组件利用props往子组件传输数据 父组件: <div> < ...
- poi jsp xls
poi jsp xls <%@ page language="java" pageEncoding="UTF-8"import="java.ut ...
- ecshop的详细安装步骤
从网上找个ecshop包,然后下载,解压,解压后的ecshop是不能直接用的,要更改几个目录的权限才能用. ecshop要放在www目录下,这样访问的话就可以直接 http://localhost/e ...
- sqlmap用户手册 [详细]
当给sqlmap这么一个url的时候,它会: 1.判断可注入的参数 2.判断可以用那种SQL注入技术来注入 3.识别出哪种数据库 4.根据用户选择,读取哪些数据 sqlmap支持五种不同的注入模式: ...
- cookie笔记(一)
1.浏览器存储信息的一个工具 2.容量有限,每个域名一般50个.详情 3.形式:键=值: 4.获取:document.cookie; 5.设置:document.cookie="uid=we ...
- vue init webpack-simple project 报错处理(connect ETIMEDOUT 192.30.253.112)
Failed to download repo vuejs-templates/webpack-simple: connect ETIMEDOUT 192.30.253.113:443 Failed ...
- java IO文件操作简单基础入门例子,IO流其实没那么难
IO是JAVASE中非常重要的一块,是面向对象的完美体现,深入学习IO,你将可以领略到很多面向对象的思想.今天整理了一份适合初学者学习的简单例子,让大家可以更深刻的理解IO流的具体操作. 1.文件拷贝 ...
- angular js 和 dajango 标签{{}} 冲突
问题描述: 如果在django的模板中使用{{ }},不会被angularjs 识别. 解决办法: >1.5 的django中,将需要angularjs解释的{{expression}}放在 v ...