Python3读取文件常用方法实例分析


Posted in Python onMay 22, 2015

本文实例讲述了Python3读取文件常用方法。分享给大家供大家参考。具体如下:

''''' 
Created on Dec 17, 2012 
读取文件 
@author: liury_lab 
''' 
# 最方便的方法是一次性读取文件中的所有内容放到一个大字符串中: 
all_the_text = open('d:/text.txt').read() 
print(all_the_text) 
all_the_data = open('d:/data.txt', 'rb').read() 
print(all_the_data) 
# 更规范的方法 
file_object = open('d:/text.txt') 
try: 
  all_the_text = file_object.read() 
  print(all_the_text) 
finally: 
  file_object.close() 
# 下面的方法每行后面有‘\n'  
file_object = open('d:/text.txt') 
try: 
  all_the_text = file_object.readlines() 
  print(all_the_text) 
finally: 
  file_object.close() 
# 三句都可将末尾的'\n'去掉  
file_object = open('d:/text.txt') 
try: 
  #all_the_text = file_object.read().splitlines() 
  #all_the_text = file_object.read().split('\n') 
  all_the_text = [L.rstrip('\n') for L in file_object] 
  print(all_the_text) 
finally: 
  file_object.close() 
# 逐行读 
file_object = open('d:/text.txt') 
try: 
  for line in file_object: 
    print(line, end = '') 
finally: 
  file_object.close() 
# 每次读取文件的一部分 
def read_file_by_chunks(file_name, chunk_size = 100):   
  file_object = open(file_name, 'rb') 
  while True: 
    chunk = file_object.read(chunk_size) 
    if not chunk: 
      break 
    yield chunk 
  file_object.close() 
for chunk in read_file_by_chunks('d:/data.txt', 4): 
  print(chunk)

输出如下:

hello python
hello world
b'ABCDEFG\r\nHELLO\r\nhello'
hello python
hello world
['hello python\n', 'hello world']
['hello python', 'hello world']
hello python
hello worldb'ABCD'
b'EFG\r'
b'\nHEL'
b'LO\r\n'
b'hell'
b'o'

希望本文所述对大家的Python程序设计有所帮助。

Python 相关文章推荐
win系统下为Python3.5安装flask-mongoengine 库
Dec 20 Python
Python利用Beautiful Soup模块搜索内容详解
Mar 29 Python
Python 爬虫图片简单实现
Jun 01 Python
python reduce 函数使用详解
Dec 05 Python
python八大排序算法速度实例对比
Dec 06 Python
python利用socketserver实现并发套接字功能
Jan 26 Python
Python 调用 Outlook 发送邮件过程解析
Aug 08 Python
Python hmac模块使用实例解析
Dec 24 Python
使用Python爬虫库requests发送表单数据和JSON数据
Jan 25 Python
Django限制API访问频率常用方法解析
Oct 12 Python
PyTorch梯度裁剪避免训练loss nan的操作
May 24 Python
浅谈tf.train.Saver()与tf.train.import_meta_graph的要点
May 26 Python
在Python中处理时间之clock()方法的使用
May 22 #Python
Python3指定路径寻找符合匹配模式文件
May 22 #Python
Python3实现从指定路径查找文件的方法
May 22 #Python
在Python操作时间和日期之asctime()方法的使用
May 22 #Python
Python3遍历目录树实现方法
May 22 #Python
Python3实现将文件树中所有文件和子目录归档到tar压缩文件的方法
May 22 #Python
Python3读取zip文件信息的方法
May 22 #Python
You might like
十天学会php之第三天
2006/10/09 PHP
PHP中MVC模式的模板引擎开发经验分享
2011/03/23 PHP
PHP源码之explode使用说明
2011/08/05 PHP
PHP高级编程实例:编写守护进程
2014/09/02 PHP
apache中为php 设置虚拟目录
2014/12/17 PHP
PHP面向对象程序设计继承用法简单示例
2018/12/28 PHP
PHP PDOStatement::getAttribute讲解
2019/02/01 PHP
jquery蒙版控件实现代码
2010/12/08 Javascript
基于javascript滚动图片具体实现
2013/11/18 Javascript
JS之Date对象和获取系统当前时间详解
2014/01/13 Javascript
Jquery实现自定义窗口随意的拖拽
2014/03/12 Javascript
href下载文件根据id取url并下载
2014/05/28 Javascript
jquery.uploadify插件在chrome浏览器频繁崩溃解决方法
2015/03/01 Javascript
JavaScript将数字转换成大写中文的方法
2015/03/23 Javascript
如何解决easyui自定义标签 datagrid edit combobox 手动输入保存不上
2015/12/26 Javascript
Jquery循环截取字符串的方法(多出的字符串处理成"...")
2016/11/28 Javascript
WebSocket实现简单客服聊天系统
2017/05/12 Javascript
JavaScript中递归实现的方法及其区别
2017/09/12 Javascript
vue 组件中添加样式不生效的解决方法
2018/07/06 Javascript
Layui给数据表格动态添加一行并跳转到添加行所在页的方法
2018/08/20 Javascript
vue vantUI实现文件(图片、文档、视频、音频)上传(多文件)
2019/10/15 Javascript
vue组件库的在线主题编辑器的实现思路
2020/04/03 Javascript
vue element table中自定义一些input的验证操作
2020/07/18 Javascript
element-plus一个vue3.xUI框架(element-ui的3.x 版初体验)
2020/12/02 Vue.js
[01:06:54]DOTA2-DPC中国联赛 正赛 SAG vs DLG BO3 第二场 2月28日
2021/03/11 DOTA
Python批量创建迅雷任务及创建多个文件
2016/02/13 Python
视觉直观感受若干常用排序算法
2017/04/13 Python
浅谈python中字典append 到list 后值的改变问题
2018/05/04 Python
浅谈pyqt5中信号与槽的认识
2019/02/17 Python
编写python代码实现简单抽奖器
2020/10/20 Python
机电专业毕业生求职信
2014/07/01 职场文书
教师病假条范文
2015/08/17 职场文书
《索溪峪的野》教学反思
2016/02/19 职场文书
《围炉夜话》110句人生箴言,精辟有内涵,引人深思
2019/10/23 职场文书
MySQL对数据表已有表进行分区表的实现
2021/11/01 MySQL
聊聊mysql都有哪几种分区方式
2022/04/13 MySQL