鱼C论坛

 找回密码
 立即注册
查看: 2708|回复: 6

[已解决]对于文件当中的for each

[复制链接]
发表于 2019-11-24 14:17:46 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 zltzlt 于 2019-11-24 14:19 编辑

for each 的问题.png
在一开始的处理字符串里,for each 中的each 代指的每一个元素,所以我理解的在文件处理当中,应该是每次循环打印一个字符然后换行才对,为什么结果是他自动识别了一行,打印一行之后才会换行啊?求大神指导下
最佳答案
2019-11-24 14:39:25
本帖最后由 jackz007 于 2019-11-24 14:50 编辑
润木 发表于 2019-11-24 14:28
那么字符串呢?比如说  a='abcde'  for each in a:  print(each)   这个打印结果应该是每一行一个字符啊 ...


      文本文件的读写,一定是按行来划分单元的。因为每个文本行的最后,都注定会有一个换行符 '\n',这是必然的。例如,写代码的时候,写完一行,需要写下一行的时候,你会怎么做?难道不是回车,另起一行吗?你按下的这个回车键,就会在代码文件中,那一行代码的末尾,留下一个换行符 '\n'。
for each 的问题.png
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2019-11-24 14:25:46 | 显示全部楼层
文件的 for in 操作是按照换行符来分隔文本的,所以 each 是每一行。不是 Python 自动识别一行,而是文件每一行之间有换行符 \r\n 相隔,Python 按照换行符隔开每一行。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-11-24 14:28:31 | 显示全部楼层
zltzlt 发表于 2019-11-24 14:25
文件的 for in 操作是按照换行符来分隔文本的,所以 each 是每一行。不是 Python 自动识别一行,而是文件每 ...

那么字符串呢?比如说  a='abcde'  for each in a:  print(each)   这个打印结果应该是每一行一个字符啊,可是字符串里面并没有换行符啊
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-11-24 14:35:08 | 显示全部楼层
      一个文本文件是一个可迭代对象,对象中的元素是文件中的文本行,for each in f: 循环中, each 每次枚举到的是文件中的一个文本行。当然,这个 each 是字符串,也属于可迭代对象,仍然可以通过 for 循环枚举其每个元素,这个时候枚举到的才是单个字符。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-11-24 14:39:25 | 显示全部楼层    本楼为最佳答案   
本帖最后由 jackz007 于 2019-11-24 14:50 编辑
润木 发表于 2019-11-24 14:28
那么字符串呢?比如说  a='abcde'  for each in a:  print(each)   这个打印结果应该是每一行一个字符啊 ...


      文本文件的读写,一定是按行来划分单元的。因为每个文本行的最后,都注定会有一个换行符 '\n',这是必然的。例如,写代码的时候,写完一行,需要写下一行的时候,你会怎么做?难道不是回车,另起一行吗?你按下的这个回车键,就会在代码文件中,那一行代码的末尾,留下一个换行符 '\n'。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-11-24 14:47:02 | 显示全部楼层
润木 发表于 2019-11-24 14:28
那么字符串呢?比如说  a='abcde'  for each in a:  print(each)   这个打印结果应该是每一行一个字符啊 ...


字符串是字符串,文件对象是文件对象,两个不同的东西
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-11-24 14:50:34 | 显示全部楼层
jackz007 发表于 2019-11-24 14:35
一个文本文件是一个可迭代对象,对象中的元素是文件中的文本行,for each in f: 循环中, each 每次 ...

基本了解什么意思了,谢谢
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-10-2 02:21

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表