python - 文件处理中的for循环(python)
问题描述
f = open("food.txt", "r")
for line in f:
print(line)
我不明白上面的 for 循环是如何逐行读取文件的?为什么不逐个字符或逐个单词?请解释。
解决方案
这就是 Python 的工作原理,open
创建一个file-object
.
如果您默认查看文件对象的I/O 文档,它们会逐行读取!
用文档中的话说:“这是内存效率高,速度快,并且代码简单”
在以前的 Python(2.2-) 版本中,您必须为相同的功能指定字节限制!
对于字符,您可以执行以下操作:
for line in f:
for c in line: print(c)
对于您可以执行的操作:
for line in f:
for w in line.split(): print(w)
推荐阅读
- sql - 返回 Toad 中的最新行
- laravel - 图像干预 图像源不可读 Laravel
- excel - application.IsTrusted 返回 false
- aws-elastictranscoder - 是否可以拍摄 2 个单独的视频并将它们并排放在 AWS 弹性转码器中
- java - 为什么 FileReader 流从文本文件中读取 237、187、191?
- swagger - Swagger Swashbuckle 4.0 版本在 swagger 页面顶部引入了一个新的大白条
- grafana - 如何编辑因错误查询而一直冻结的 Grafana 仪表板
- android - 如何将 google play 和 testflight 中的 beta 用户转移到生产应用程序
- sql - 如何在 SQL Server 查询游标上绑定参数
- firebase - 部分匹配。文档至少包含搜索参数之一