python怎么提取出文件里的指定内容

如题所述

python读取文件内容的方法:

一.最方便的方法是一次性读取文件中的所有内容并放置到一个大字符串中:

all_the_text = open('thefile.txt').read( )
# 文本文件中的所有文本
all_the_data = open('abinfile','rb').read( )
# 二进制文件中的所有数据

为了安全起见,最好还是给打开的文件对象指定一个名字,这样在完成操作之后可以迅速关闭文件,防止一些无用的文件对象占用内存。举个例子,对文本文件读取:

file_object = open('thefile.txt')
try:
all_the_text = file_object.read( )
finally:
file_object.close( )

不一定要在这里用Try/finally语句,但是用了效果更好,因为它可以保证文件对象被关闭,即使在读取中发生了严重错误。

二.最简单、最快,也最具Python风格的方法是逐行读取文本文件内容,并将读取的数据放置到一个字符串列表中:list_of_all_the_lines = file_object.readlines( )

这样读出的每行文本末尾都带有"\n"符号;如果你不想这样,还有另一个替代的办法,比如:
list_of_all_the_lines = file_object.read( ).splitlines( )
list_of_all_the_lines = file_object.read( ).split('\n')
list_of_all_the_lines = [L.rstrip('\n') for L in file_object]

1、Python 

Python(英语发音:/ˈpaɪθən/), 是一种面向对象、解释型计算机程序设计语言,由Guido van Rossum于1989年底发明,第一个公开发行版发行于1991年,Python 源代码同样遵循 GPL(GNU General Public License)协议。

2、基本概念

Python(KK 英语发音:/'paɪθɑn/, DJ 英语发音:/ˈpaiθən/)是一种面向对象、直译式计算机程序设计语言,由Guido van Rossum于1989年底发明。

温馨提示:内容为网友见解,仅供参考
第1个回答  2016-07-19
  python读取文件内容的方法:
  一.最方便的方法是一次性读取文件中的所有内容并放置到一个大字符串中:
  all_the_text = open('thefile.txt').read( )
  # 文本文件中的所有文本
  all_the_data = open('abinfile','rb').read( )
  # 二进制文件中的所有数据
  为了安全起见,最好还是给打开的文件对象指定一个名字,这样在完成操作之后可以迅速关闭文件,防止一些无用的文件对象占用内存。举个例子,对文本文件读取:
  file_object = open('thefile.txt')
  try:
  all_the_text = file_object.read( )
  finally:
  file_object.close( )
  不一定要在这里用Try/finally语句,但是用了效果更好,因为它可以保证文件对象被关闭,即使在读取中发生了严重错误。
  二.最简单、最快,也最具Python风格的方法是逐行读取文本文件内容,并将读取的数据放置到一个字符串列表中:
  list_of_all_the_lines = file_object.readlines( )
  这样读出的每行文本末尾都带有"\n"符号;如果你不想这样,还有另一个替代的办法,比如:
  list_of_all_the_lines = file_object.read( ).splitlines( )
  list_of_all_the_lines = file_object.read( ).split('\n')
  list_of_all_the_lines = [L.rstrip('\n') for L in file_object]
  最简单最快的逐行处理文本文件的方法是,用一个简单的for循环语句:
  for line in file_object:
  process line
  这种方法同样会在每行末尾留下"\n"符号;可以在for循环的主体部分加一句:
  lineline = line.rstrip('\n')
  或者,你想去除每行的末尾的空白符(不只是'\n'\),常见的办法是:
  lineline = line.rstrip( )本回答被提问者采纳
相似回答