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. UnrealScript语言基础

    总体特征 (1)大小写不敏感.关键字.宏.变量名.函数名以及类名不区分大小写:变量名可以与关键字同名 (2)局部变量.成员变量未初始化时,会被编译器初始化 (3)没有全局变量.全局函数,所有东西必须写 ...

  2. SQLite文件查看工具DB Browser for SQLite

    有时候,我们用Python创建了一个test.sqlite文件,想查看里面的数据,除了用Python连上数据库,SELECT出来,还有什么好办法呢?这里推荐使用一个小工具DB Browser for ...

  3. 创建Unity3D的MacOS Plugin的正确姿势

    http://www.tedlindstrom.se/how-to-link-dylibs-into-unity3d/ I was roaming around the net looking for ...

  4. 数量经济学推荐的Julia教程

    http://quant-econ.net/jl/learning_julia.html Julia最为号称和c媲美的运行速度,想python一下简单的语法,虽然发展还不完善,但任然值得去关注. Ju ...

  5. java中的小数的取整的几种函数

    Math类中提供了5个与取整相关的函数,如下所示: static double ceil(double a):天花板函数,返回大于等于a的最小整数(但是以浮点数形式存储). static double ...

  6. NXP恩智浦P89V52X2单片机破解P89C52X2BA芯片解密技术分享!

    NXP恩智浦P89V52X2单片机破解P89C52X2BA芯片解密 P89V52X2是一款带有8kB Flash.256B数据RAM和192B数据EEPROM的80C51微控制器.这个器件可以在完全替 ...

  7. 微信开发笔记:获取用户openid,以及用户头像昵称等信息

    微信开发的时候有一个很便利的途径来进行一个用户的一步注册登录,就是使用用户的微信信息来直接进行登陆,可以省去很多不必要的麻烦.那具体这些信息是如何来获取的呢? 首先呢,我们需要对微信进行一个授权,让微 ...

  8. 【vuejs小项目】一、脚手架搭建工作

    一.关于vuejs 这是一个MVVM的前端开发框架,model(数据).viewmode(通讯).view(视图),它吸取了reactjs和angularjs的长处,核心重点在于组件化的设计原则. 我 ...

  9. 如何使用IconFont字体图标代替网页图片?

    一.IconFont的优点 1.轻量性 可以减少http请求,可以配合html5离线存储做性能优化,有利于后期维护. 2.灵活性 可以自由变换IconFont大小(不失真),可以修改IconFont颜 ...

  10. LintCode 78:Longest Common Prefix

      public class Solution { /** * @param strs: A list of strings * @return: The longest common prefix ...