1. 读取文本文件
代码:

  1. f = open('test.txt', 'r')
  2. print f.read()
  3. f.seek(0)
  4. print f.read(14)
  5. f.seek(0)
  6. print f.readline()
  7. print f.readline()
  8. f.seek(0)
  9. print f.readlines()
  10. f.seek(0)
  11. for line in f:
  12. print line,
  13. f.close()
 
运行结果:
root@he-desktop:~/python/example# python read_txt.py 
第一行
第二行
第三行
 
第一行
第一行
 
第二行
 
['\xe7\xac\xac\xe4\xb8\x80\xe8\xa1\x8c\n', '\xe7\xac\xac\xe4\xba\x8c\xe8\xa1\x8c\n', '\xe7\xac\xac\xe4\xb8\x89\xe8\xa1\x8c\n']
第一行
第二行
第三行
 
open的第二个参数:
  • r,读取模式
  • w,写入模式
  • a,追加模式
  • r+,读写模式
read()表示读取到文件尾,size表示读取大小。
seek(0)表示跳到文件开始位置。
readline()逐行读取文本文件。
readlines()读取所有行到列表中,通过for循环可以读出数据。
close()关闭文件。
 
2. 写入文本文件
代码:
  1. f = open('test.txt', 'r+')
  2. f.truncate()
  3. f.write('0123456789abcd')
  4. f.seek(3)
  5. print f.read(1)
  6. print f.read(2)
  7. print f.tell()
  8. f.seek(3, 1)
  9. print f.read(1)
  10. f.seek(-3, 2)
  11. print f.read(1)
  12. f.close()
 
运行结果:
root@he-desktop:~/python/example# python write_txt.py 
3
45
6
9
b
 
truncate()表示清空文件
write()写入文本
seek(3)定位到第4个元素前,0表示文件开始,也就是第1个元素前。
seek(3, 1)第二个参数默认是0,表示从文件开始处读取;1表示从当前位置开始计数;2表示从文件最后开始。
read(1)读取一个字节,指针会根据读取的大小移动相应的位置。
tell()取得当前指针的位置。
 
3. 读取文件信息
  1. # coding: utf-8
  2. f = open('test.txt')
  3. print '文件名:', f.name
  4. print '是否处于关闭状态:', f.closed
  5. print '打开的模式:', f.mode
 
运行结果:
root@he-desktop:~/python/example# python read_info.py 
文件名: test.txt
是否处于关闭状态: False
打开的模式: r
 
 

Python逐行读取文件内容

代码来源: Python参考手册

f = open("foo.txt")             # 返回一个文件对象 line = f.readline()             # 调用文件的 readline()方法 while line:     print line,                 # 后面跟 ',' 将忽略换行符     # print(line, end = '')   # 在 Python 3中使用     line = f.readline()
f.close()

也可以写成以下更简洁的形式

for line in open("foo.txt"):     print line,

更详细的文件按行读取操作可以参考:http://www.cnblogs.com/xuxn/archive/2011/07/27/read-a-file-with-python.html

1. 最基本的读文件方法: ? # File: readline-example-1.py   file = open("sample.txt")   while 1:     line = file.readline()     if not line:         break     pass # do something   一行一行得从文件读数据,显然比较慢;不过很省内存。   在我的机器上读10M的sample.txt文件,每秒大约读32000行 2. 用fileinput模块 ? # File: readline-example-2.py   import fileinput   for line in fileinput.input("sample.txt"):     pass   写法简单一些,不过测试以后发现每秒只能读13000行数据,效率比上一种方法慢了两倍多…… 3. 带缓存的文件读取 ? # File: readline-example-3.py   file = open("sample.txt")   while 1:     lines = file.readlines(100000)     if not lines:         break     for line in lines:         pass # do something   这个方法真的更好吗?事实证明,用同样的数据测试,它每秒可以读96900行数据!效率是第一种方法的3倍,第二种方法的7倍! ————————————————————————————————————————————————————————————   在Python 2.2以后,我们可以直接对一个file对象使用for循环读每行数据: ? # File: readline-example-5.py   file = open("sample.txt")   for line in file:     pass # do something   而在Python 2.1里,你只能用xreadlines迭代器来实现: ? # File: readline-example-4.py   file = open("sample.txt")   for line in file.xreadlines():     pass # do something   翻译自:http://hi.baidu.com/netspider_2007/blog/item/870354c753e4a71c9c163d64.html

python读取文本文件的更多相关文章

  1. python读取文本文件数据

    本文要点刚要: (一)读文本文件格式的数据函数:read_csv,read_table 1.读不同分隔符的文本文件,用参数sep 2.读无字段名(表头)的文本文件 ,用参数names 3.为文本文件制 ...

  2. python 读写文本文件

    本人最近新学python ,用到文本文件的读取,经过一番研究,从网上查找资料,经过测试,总结了一下读取文本文件的方法. 1.在读取文本文件的时无非有两种方法: a.f=open('filename', ...

  3. Python读取SQLite文件数据

    近日在做项目时,意外听说有一种SQLite的数据库,相比自己之前使用的SQL Service甚是轻便,在对数据完整性.并发性要求不高的场景下可以尝试! 1.SQLite简介: SQLite是一个进程内 ...

  4. 如何使用Python读取大文件

    背景 最近处理文本文档时(文件约2GB大小),出现memoryError错误和文件读取太慢的问题,后来找到了两种比较快Large File Reading 的方法,本文将介绍这两种读取方法. 准备工作 ...

  5. python读取文件首行和最后一行

    python读取文件最后一行两种方式 1)常规方法:从前往后依次读取 步骤:open打开文件. 读取文件,把文件所有行读入内存. 遍历所有行,提取指定行的数据. 优点:简单,方便 缺点:当文件大了以后 ...

  6. 利用Python读取外部数据文件

      不论是数据分析,数据可视化,还是数据挖掘,一切的一切全都是以数据作为最基础的元素.利用Python进行数据分析,同样最重要的一步就是如何将数据导入到Python中,然后才可以实现后面的数据分析.数 ...

  7. python 读取配置文件总是报错 configparser.NoSectionError: No section:

    本文为作者原创,禁止转载,违者必究法律责任!!! python 读取配置文件总是报错 configparser.NoSectionError: No section: 无论是 python2的版本,还 ...

  8. 【Python】Python 读取csv的某行或某列数据

    Python 读取csv的某行 转载 2016年08月30日 21:01:44 标签: python / csv / 数据   站长用Python写了一个可以提取csv任一列的代码,欢迎使用.Gith ...

  9. python读取txt、csv和excel文件

    一.python读取txt文件:(思路:先打开文件,读取文件,最后用for循环输出内容) fp = open('test.txt','r') lines = fp.readlines() fp.clo ...

随机推荐

  1. Redis Sentinel集群配置中的一些细节

    今天在配置Redis集群,用作Tomcat集群的缓存共享.关于Redis集群的配置网上有很多文章,这里只是记录一下我在配置过程中遇到的一些小的细节问题. 1. 关于Protected Mode的问题 ...

  2. json_decode返回NULL

    最近在调用某公司的API时,将对方返回的数据,使用PHP的json_decode函数解析,但是返回NULL,最终排查为对方传送来的json格式有误 打印$_REQUEST,数据结构大致如下: arra ...

  3. POCO库——Foundation组件之核心Core

    核心Core: Version.h:版本控制信息,宏POCO_VERSION,值格式采用0xAABBCCDD,分别代表主版本.次版本.补丁版本.预发布版本: Poco.h:简单地包含了头文件Found ...

  4. Win10 UI入门 SliderRectangle

    看了@段博琼大哥导航滑动的思路,自己又做了一个类似与黄油相机里面的一个功能 <Grid x:Name="> <Grid.ColumnDefinitions> < ...

  5. StartCom 申请 SSL 证书及 Nginx HTTPS 支持配置全攻略

    来源:https://www.williamyao.com/index.php/archives/1397/ 前言 最近收到 StartCom 的邮件,数字证书即将过期,想到去年在 StartSSL ...

  6. mysql从身份证号中提取生日、性别

    SELECT p.ID, p.IDCardNo, IF ( LENGTH(p.IDCardNo) , CAST( , ) AS DATETIME ), CAST( CONCAT( ', , ) ) A ...

  7. qtranslate

    qtranslate可以帮助用户快速的建立多语言网站平台,qTranslate 插件就是一个功能强大的 WordPress 多语言插件. 它允许用户在配置页添加新的语言.在 URL 结构方面,qTra ...

  8. Windows下搭建Wordpress博客网站

    一:安装wamp Windows下的Apache+Mysql/MariaDB+Perl/PHP/Python,一组常用来搭建动态网站或者服务器的开源软件,本身都是各自独立的程序,但是因为常被放在一起使 ...

  9. 《UML大战需求分析》阅读随笔(五)

    在处理复杂事物的时候,用到一种基本手段就是抽象.抽象的目的是区别事物之间的本质和不同,面向对象编程(OOP)的实质就是利用 类和对象来建立抽象模型. 类表示对象的类别,是创建对象的蓝本.建立一个事物的 ...

  10. 城管停车执法打印APP 移动云POS 现场打印告知单-执法平台+智能POS客户端系统

    市城管局城管支队工作人员使用最新配备的城管执法手持终端对便道违法停放车辆进行拍照取证. 城管执法手持终端具备拍照.现场打印.无线传输等功能,执法人员只要在该终端登录,即可随时实现对违停车辆的拍照取证. ...