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中文件处理的更多相关文章

  1. python3中文件/IO编程

    python3的文件操作可谓是我见过所有语言中最舒服的,那我们来一起看一下py3中的文件操作. 1:文件的打开方式有以下几种: 注:以上图表参考菜鸟教程 2:定位读写文件  f = open(&quo ...

  2. python3中文件的读与写

    Python open() 函数用于打开一个文件,并返回文件对象,在对文件进行处理过程都需要使用到这个函数,如果该文件无法被打开,会抛出错误 完整语法:open(file, mode='r', buf ...

  3. python3中文件操作及编码

    #之前一直没明白文件处理中的w和wb的区别到底是什么,#在看过视频后才知道,原来在linux里面是没有区别的,#但是在windows里面就能够看出区别来了#下面来个例子: with open(&quo ...

  4. 把模块有关联的放在一个文件夹中 在python2中调用文件夹名会直接失败 在python3中调用会成功,但是调用不能成功的解决方案

    把模块有关联的放在一个文件夹中 在python2中调用文件夹名会直接失败在python3中调用会成功,但是调用不能成功 解决办法是: 在该文件夹下加入空文件__init__.py python2会把该 ...

  5. Python3 中codecs进行文件的读取

    简单的概念与说明 编码(动词):按照某种规则(这个规则称为:编码(名词))将"文本"转换为"字节流".而在python 3中则表示:unicode变成str 解 ...

  6. Python3中使用PyMySQL连接Mysql

    Python3中使用PyMySQL连接Mysql 在Python2中连接Mysql数据库用的是MySQLdb,在Python3中连接Mysql数据库用的是PyMySQL,因为MySQLdb不支持Pyt ...

  7. python3 中mlpy模块安装 出现 failed with error code 1的决绝办法(其他模块也可用本方法)

    在python3 中安装其它模块时经常出现 failed with error code 1等状况,使的安装无法进行.而解决这个问题又非常麻烦. 接下来以mlpy为例,介绍一种解决此类安装问题的办法. ...

  8. Windows系统下python3中安装pyMysql

    python2和python3是不兼容的,在py2中,链接数据库使用的是mysqldb,但在py3中是不能用的. 解决办法就是在py3中数据库使用的模块是pyMysql. 在dos窗口中安装第三方库会 ...

  9. python3中的编码与解码(超好理解)

    编码和解码是针对数据而言的,数据能干什么呢?无非就是用来显示,储存和传输的: 储存和传输数据当然是希望数据越小越好,所以发明了utf-8这种数据编码显示:它智能将英文用一个字节表示,欧洲的字符用两个字 ...

随机推荐

  1. Spark操作HBase问题:java.io.IOException: Non-increasing Bloom keys

    1 问题描述 在使用Spark BulkLoad数据到HBase时遇到以下问题: 17/05/19 14:47:26 WARN scheduler.TaskSetManager: Lost task ...

  2. 【JavaScript你需要知道的基础知识~】

    最近开始学习JavaScript,整理了一些相关的基础知识 JS注释方式:// 单行注释(Ctrl+/ )/* 段落注释(Ctrl+shift+/ )*/ [JavaScript基础]JavaScri ...

  3. struts2.1.6教程八、验证机制

    注意:要想实现校验,action必须继承自ActionSupport类. 1.基于手工编码的校验 我们建立struts2validate项目 ,其中reg.jsp页面主要代码如下: <body& ...

  4. 开涛spring3(1) - Spring概述

    1.1.1  Spring是什么 Spring是一个开源的轻量级Java SE(Java 标准版本)/Java EE(Java 企业版本)开发应用框架,其目的是用于简化企业级应用程序开发.应用程序是由 ...

  5. 详解Struts2拦截器机制

    Struts2的核心在于它复杂的拦截器,几乎70%的工作都是由拦截器完成的.比如我们之前用于将上传的文件对应于action实例中的三个属性的fileUpload拦截器,还有用于将表单页面的http请求 ...

  6. 使用babel编译es6

    起因:开发中慢慢的学习使用es6,但是JavaScript需要浏览器来解析,而不是所有浏览器都支持es6,所以为了兼容es6,需要第三方工具进行编译es6. 工具:node,gulp,gulp-bab ...

  7. GPU编程--宏观理解篇(1)

    GPU编程与CPU编程最大的不同可以概括为以下两点: "The same program is executed on many data elements in parallel" ...

  8. Java内存管理思维导图

    文 by / 林本托 Tips 做一个终身学习的人. 如果想要成为一名合格的 Java 程序员,就必须要涉及和掌握一些 Java 虚拟机的内部结构和特性.最近在读<深入理解Java 虚拟机> ...

  9. 预约会议sql

     CREATE proc sp_MeetingCheck_Test        @serialno varchar(max)='',   ---- 主档serialno        @title  ...

  10. MyBatis7:MyBatis插件及示例----打印每条SQL语句及其执行时间

    Plugins 摘一段来自MyBatis官方文档的文字. MyBatis允许你在某一点拦截已映射语句执行的调用.默认情况下,MyBatis允许使用插件来拦截方法调用 Executor(update.q ...