Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/283.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
当for循环的序列部分是文件时,Python如何知道它必须逐行读取文件?_Python - Fatal编程技术网

当for循环的序列部分是文件时,Python如何知道它必须逐行读取文件?

当for循环的序列部分是文件时,Python如何知道它必须逐行读取文件?,python,Python,在这里,我打开sys.argv列表的第二个值进行读取,将文件对象存储在变量f中,然后逐行处理文件: f = open(sys.argv[1]) for line in f: Python如何知道它必须逐行读取文件?起初我认为,line本身有某种特殊的含义,但我也可以在f:中为xine做,它仍然有效。Python是否知道,如果for循环的序列部分是文件(或文件对象),它必须逐行读取文件 Python是否知道,如果 for循环的序列部分是文件(或文件对象) 是的,在Python中文件对象就是这样实

在这里,我打开
sys.argv
列表的第二个值进行读取,将文件对象存储在变量
f
中,然后逐行处理文件:

f = open(sys.argv[1])
for line in f:
Python如何知道它必须逐行读取文件?起初我认为,
line
本身有某种特殊的含义,但我也可以在f:中为xine做
,它仍然有效。Python是否知道,如果for循环的序列部分是文件(或文件对象),它必须逐行读取文件

Python是否知道,如果 for循环的序列部分是文件(或文件对象)

是的,在Python中文件对象就是这样实现的

文件对象是迭代器对象,其
next
方法返回一行。将其放入
for
中,只需重复调用
next
方法,您得到的是连续分配给循环变量的文件行:
line
xine
或任何其他有效分配目标


是做的同义词:

line = next(f)
# do something with line
line = next(f)
# do something with line
...
# repeat until EOF
Python是否知道,如果 for循环的序列部分是文件(或文件对象)

是的,在Python中文件对象就是这样实现的

文件对象是迭代器对象,其
next
方法返回一行。将其放入
for
中,只需重复调用
next
方法,您得到的是连续分配给循环变量的文件行:
line
xine
或任何其他有效分配目标


是做的同义词:

line = next(f)
# do something with line
line = next(f)
# do something with line
...
# repeat until EOF

文件
类型有一个
\uu iter\uu()
方法,该方法返回一个逐行迭代器。任何类型(包括您自己编写的类型)都可以使用此方法来指示迭代时的行为。请参阅
文件
类型有一个
\uuu iter\uuu()
方法,该方法返回逐行迭代器。任何类型(包括您自己编写的类型)都可以使用此方法来指示迭代时的行为。看见