1. open()函数用法:

file-object = open(file_name, access_mode = ' ', buffering = -1)

filename可以是相对路径或绝对路径,access_mode可以为r, w, a分别代表读,写,追加,U则表示通用换行符支持。r和U模式下,打开的文件必须存在,w模式下打开的文件若存在则首先被清空,然后重新写入。a则是追加到文件尾部。如果文件不存在,则自动创建。

buffering表示缓冲方法,0为不缓冲,1为缓冲一行,大于1则表示缓冲特定大小,不给定或-1时,则表示采用默认缓冲机制。

  1. 文件内建方法
    1. read(N):直接读取N个字节到字符串中
    2. readline():读取文件的一行,包括行结束符然后作为字符串返回。
    3. readlines():读取所有(剩余的)行然后把它们作为一个字符串列表返回。
    4. xreadlines()不是一次性读取所有行,而是每次读取一块,用在for循环中可以减少对内存的占用。使用迭代器也一样可以实现。
    5. write():功能和read()相反。
    6. writelines():针对列表,他接受一个字符串列表作为参数,将他们写入文件。行结束符不会被自动写入。
  2. seek()和tell()

seek(offset)方法可以在文件中移动文件指针到不同的位置,offset字节代表相对某个位置的偏移量,默认为0,1表示从当前位置算起,2表示从文件末尾算起。tell()则可以显示指针在文件中的位置。

  1. 标准文件

sys模块通过sys.argv属性提供了对命令行参数的访问,sys.argv[0]永远是程序的名称,len(sys.argv)是命令行参数的个数。

文件对象方法

操作

file.close( )

关闭文件

file.fileno( )

返回文件操作符(FD整型)

file.flush( )

刷新文件内部缓冲区

file.isatty( )

判断file是否问一个类tty设备

file.next( )

返回文件下一行(类readline)

file.read(size = -1)

从文件读取size个字节,当未给定size或为负时,读取剩余所有字节,然后作为字符串返回

  1. 从文件读取的数据回到脚本时是一个字符串,当把数据写入文件时,python不会自动将对象转换为字符串,你必须传递一个已经格式化的字符串。
  2. 正常python打开文件都是使用open函数,但是当中途出现异常时,文件时无法正常关闭的,可能引发不可知的错误,同时可避免忘记结尾close的情况。

因此推荐使用with函数来打开文件

>>> with open('workfile', 'r') as f:
... read_data = f.read()
>>> f.closed
True

使用迭代器打开文件,十分快速和节省内存。

f = open(filename , 'r')

for eachline in f:

print eachline

f.close()

python——文件读写的更多相关文章

  1. python文件读写及形式转化和CGI的简单应用

    一丶python文件读写学习笔记 open() 将会返回一个 file 对象,基本语法格式如下: open(filename, mode) filename:包含了你要访问的文件名称的字符串值. mo ...

  2. python 文件读写操作(24)

    以前的代码都是直接将数据输出到控制台,实际上我们也可以通过读/写文件的方式读取/输出到磁盘文件中,文件读写简称I/O操作.文件I/O操作一共分为四部分:打开(open)/读取(read)/写入(wri ...

  3. Python 文件读写,条件循环(三次登录锁定账号实例)

    通过文件读写,条件循环相关语法,实现三次登录失败则锁定该账号的功能 需求一 """需求描述: 1.输入正确账号,密码,退出程序 2.登录失败,重新输入账号密码 3.同一账 ...

  4. 【学习】python文件读写,用with open as的好处,非常好【转载】

    原文链接:http://www.cnblogs.com/ymjyqsx/p/6554817.html 备注:博主还有很多值得学习的笔记,遇到问题可以拜读,非常感谢博主的总结 读写文件是最常见的IO操作 ...

  5. python文件读写,以后就用with open语句

    读写文件是最常见的IO操作.Python内置了读写文件的函数,用法和C是兼容的. 读写文件前,我们先必须了解一下,在磁盘上读写文件的功能都是由操作系统提供的,现代操作系统不允许普通的程序直接操作磁盘, ...

  6. Python文件读写(open(),close(),with open() as f...)

    Python内置了读写文件的函数,用法和C是兼容的.本节介绍内容大致有:文件的打开/关闭.文件对象.文件的读写等. 本章节仅示例介绍 TXT 类型文档的读写,也就是最基础的文件读写,也需要注意编码问题 ...

  7. python 文件读写方式

    一.普通文件读写方式 1.读取文件信息: with open('/path/to/file', 'r') as f: content = f.read() 2.写入文件中: with open('/U ...

  8. Python文件读写、StringIO和BytesIO

    1 IO的含义 在计算机中,IO是Input/Output的简写,也就是输入和输出. 由于程序和运行时数据是在内存中驻留,由CPU这个超快的计算核心来执行,涉及到数据交换的地方,通常是磁盘.网络等,就 ...

  9. python文件读写小结

    读文件 打开一个文件用open()方法(open()返回一个文件对象,它是可迭代的): >>> f = open('test.txt', 'r') r表示是文本文件,rb是二进制文件 ...

  10. Python文件读写及网站显示

    一.关于文件读写的笔记 (一) 文件概述 文件是一个存储在辅助存储器上的数据序列,可以包含任何数据内容 文件都是按照2进制进行存储的,但在表现形式上有2种:文本文件和二进制文件. 1. 文本文件 文本 ...

随机推荐

  1. JPanel JScrollPanel

    JPanel 和 JScrollPanel 都属于面板,也是 Swing 中间容器,可以作为容器存放组件,但必须被添加到其他容器中. JPanel 可以聚集一些组件来布局, JScrollPanel ...

  2. leveldb 学习记录(四) skiplist补与变长数字

    在leveldb 学习记录(一) skiplist 已经将skiplist的插入 查找等操作流程用图示说明 这里在介绍 下skiplist的代码 里面有几个模块 template<typenam ...

  3. Python3基础知识之日期时间与字符的转换

    问题:“猿类”们都知道,编程中都会涉及到日期.时间类型与字符串类型的转换.不同场景,需要将字符串格式转换为日期类型:也需要将日期类型转换为字符串格式. 目标: 学习和积累python中time和dat ...

  4. 1.2 eigen中矩阵和向量的运算

    1.2 矩阵和向量的运算 1.介绍 eigen给矩阵和向量的算术运算提供重载的c++算术运算符例如+,-,*或这一些点乘dot(),叉乘cross()等等.对于矩阵类(矩阵和向量,之后统称为矩阵 类) ...

  5. MVC 移动识别

    ASP.NET MVC移动端识别 上面我们已经说了 响应式布局,但那是客户端的,针对于同一个视图页面的.不过 同一个视图页面 通过响应式布局 也是有缺点的 会导致页面 样式十分庞大 页面加载效率降低, ...

  6. explain 类型分析

    all 全表扫描 ☆ index 索引全扫描 ☆☆ range 索引范围扫描,常用语<,<=,>=,between等操作 ☆☆☆ ref 使用非唯一索引扫描或唯一索引前缀扫描,返回单 ...

  7. Django用openLDAP做认证

    前言 之前有需求要做一个django+ldap用户管理的简单接口,研究了好几个模块,最后终于能实现django用ldap做用户认证了.也是自己的水平有限吧,做了好长时间,现在就和大家分享一下这个过程吧 ...

  8. Spring MVC 原理探秘 - 一个请求的旅行过程

    1.简介 在前面的文章中,我较为详细的分析了 Spring IOC 和 AOP 部分的源码,并写成了文章.为了让我的 Spring 源码分析系列文章更为丰富一些,所以从本篇文章开始,我将来向大家介绍一 ...

  9. getaddrinfo 报错 Invalid value for ai_flags

    最近改了游戏的网络层代码,运行 Android 版的时候 getaddrinfo 报错 Invalid value for ai_flags. ai_flags 设置如下: struct addrin ...

  10. Javascript高级编程学习笔记(6)—— 流程控制语句

    话不多说,我们直接开始进入今天的主题 流程控制语句 首先什么是流程控制语句呢? 顾名思义,就是控制流程的语句. 在JS中语句定义了ECMAScript中的主要语法,让我们可以使用一系列的关键字来完成指 ...