Python基础之文件读取的讲解


Posted in Python onFebruary 16, 2019
with open(filename) as fp: 
  dataMat = []
  for line in fp.readlines():
          # fp.readlines()返回一个list,list of strs
          # 也即line类型为`str`
    curLine = line.strip().split('\t')
          # 只有`str`类型才有strip()成员函数,
          # 在经过split()分割,得到list类型
          # 也即curLine类型为list
          # curLine 仍然是由字符串构成的list
    dataMat.extend([float(entry) for entry in curLine])
          # 对每一个类型进行强转

文件流成员函数

(1)fp.readlines():返回的是由字符串构成的 list,list of strs(文件中的每一行为一个字符串,划分行的标识是\n(换行符))

(2)str.strip():strip() 是字符串的成员函数,strip()的返回值仍然为字符串

(3)str.split():split() 是字符串的成员函数,返回值是是字符串构成的 list,list of strs

(4)从文件中读取的数据(经过行,再对行切分)都是字符串类型,如果需要转换为数值,需要强制类型转换。

read()、readlines()、readline()

(1)read():读取全部(自然是置于内存中),返回类型为 str

(2)readlines():读取全部行(置于内存中),list of strs(较适合按行迭代)

for line in fp.readlines():
  ...
                # line 中的内容其实就是 readline 的内容

(3)readline():逐行读取,返回类型为 str

while True:
  line = fp.readline()
  if not line:
    break
  ...

当要读取的文件过大,应优先使用 readline() 逐行读取,出于内存的考虑。

io.UnsupportedOperation: read

也即不支持读操作,为什么 with open() as fp: fp(文件流)却不可以读呢?获取文件的mode(模式)不对,如果设置成了w或者wb,就意味着只写模式。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对三水点靠木的支持。如果你想了解更多相关内容请查看下面相关链接

Python 相关文章推荐
Python生成pdf文件的方法
Aug 04 Python
深入解析Python中函数的参数与作用域
Mar 20 Python
Python迭代器与生成器用法实例分析
Jul 09 Python
使用Python AIML搭建聊天机器人的方法示例
Jul 09 Python
对Python使用mfcc的两种方式详解
Jan 09 Python
使用Python的SymPy库解决数学运算问题的方法
Mar 27 Python
Python实现二叉搜索树BST的方法示例
Jul 30 Python
python实现机器人卡牌
Oct 06 Python
详解使用python3.7配置开发钉钉群自定义机器人(2020年新版攻略)
Apr 01 Python
Python全局变量与global关键字常见错误解决方案
Oct 05 Python
python自动化操作之动态验证码、滑动验证码的降噪和识别
Aug 30 Python
opencv深入浅出了解机器学习和深度学习
Mar 17 Python
解决Python3 被PHP程序调用执行返回乱码的问题
Feb 16 #Python
Python3 修改默认环境的方法
Feb 16 #Python
Python3 pip3 list 出现 DEPRECATION 警告的解决方法
Feb 16 #Python
对Python3 解析html的几种操作方式小结
Feb 16 #Python
Python实现爬取马云的微博功能示例
Feb 16 #Python
对Python3 * 和 ** 运算符详解
Feb 16 #Python
Python docx库用法示例分析
Feb 16 #Python
You might like
PHP 操作文件的一些FAQ总结
2009/02/12 PHP
一步一步学习PHP(5) 类和对象
2010/02/16 PHP
PHP利用imagick生成组合缩略图
2016/02/19 PHP
简单谈谈PHP中strlen 函数
2016/02/27 PHP
phpstudy2018升级MySQL5.5为5.7教程(图文)
2018/10/24 PHP
PHP自动载入类文件函数__autoload的使用方法
2019/03/25 PHP
jquery checkbox,radio是否选中的判断代码
2010/03/20 Javascript
Three.js源码阅读笔记(物体是如何组织的)
2012/12/27 Javascript
javascript中兼容主流浏览器的动态生成iframe方法
2014/05/05 Javascript
js实现同一页面多个不同运动效果的方法
2015/04/10 Javascript
JS模仿编辑器实时改变文本框宽度和高度大小的方法
2015/08/17 Javascript
细数JavaScript 一个等号,两个等号,三个等号的区别
2016/10/09 Javascript
jQuery图片轮播功能实例代码
2017/01/29 Javascript
JavaScript 过滤关键字
2017/03/20 Javascript
vue this.reload 方法 配置
2018/09/12 Javascript
js中对象和面向对象与Json介绍
2019/01/21 Javascript
常见的在Python中实现单例模式的三种方法
2015/04/08 Python
python 性能提升的几种方法
2016/07/15 Python
使用python实现飞机大战游戏
2020/03/23 Python
花园仓库建筑:Garden Buildings Direct
2018/02/16 全球购物
英国奢侈皮具品牌:Aspinal of London
2018/09/02 全球购物
文秘自荐信
2013/10/20 职场文书
我的网上商城创业计划书
2013/12/26 职场文书
财务管理职业生涯规划范文
2013/12/27 职场文书
高一英语教学反思
2014/01/22 职场文书
办公室综合文员岗位职责范本
2014/02/13 职场文书
2014春晚主持词
2014/03/25 职场文书
大学生活动总结模板
2014/07/02 职场文书
民族团结好少年事迹材料
2014/08/19 职场文书
社区班子对照检查材料
2014/08/27 职场文书
银行贷款委托书范本
2014/10/11 职场文书
2014年高校辅导员工作总结
2014/12/09 职场文书
力克胡哲观后感
2015/06/10 职场文书
读《庄子》有感:美而不自知
2019/11/06 职场文书
pytorch 中nn.Dropout的使用说明
2021/05/20 Python
JS的深浅复制详细
2021/10/16 Javascript