Python 使用索引,打开(文件)作为枚举(文件指针)
我试图使用Python 使用索引,打开(文件)作为枚举(文件指针),python,python-2.7,Python,Python 2.7,我试图使用with语法打开一个文件,同时也枚举文件的行 所以我试了一下: with index, open(filename) as enumerate(f): f.read()... 其中f对应于open(filename),而index应采用enumerate(f)。因此,我希望能够调用body中的f.read(),并知道正在处理文件的哪一行 我相信这是可以做到的——我只是没有正确地使用语法。有什么帮助吗?我认为与您正在尝试的内容最接近的是: with open(filename)
with
语法打开一个文件,同时也枚举文件的行
所以我试了一下:
with index, open(filename) as enumerate(f):
f.read()...
其中f
对应于open(filename)
,而index
应采用enumerate(f)
。因此,我希望能够调用body中的f.read()
,并知道正在处理文件的哪一行
我相信这是可以做到的——我只是没有正确地使用语法。有什么帮助吗?我认为与您正在尝试的内容最接近的是:
with open(filename) as f:
for index, line in enumerate(f):
# Do stuff with each line.
f.read()
不能将enumerate
调用与with
语句组合,因为:
执行带有一个“项”的with语句的过程如下
如下:
上下文表达式(with_项中给出的表达式)为
计算以获取上下文管理器
将加载上下文管理器的\uuuuu exit\uuuu()
,以供以后使用
将调用上下文管理器的\uuuu enter\uuu()
方法
如果with语句中包含目标
,则
\uuuu enter\uuuu()已分配给它。
。
target
是指将open(filename)
的返回值指定给的变量。它不可能是一个函数调用。我认为与您正在尝试的内容最接近的是:
with open(filename) as f:
for index, line in enumerate(f):
# Do stuff with each line.
f.read()
不能将enumerate
调用与with
语句组合,因为:
执行带有一个“项”的with语句的过程如下
如下:
上下文表达式(with_项中给出的表达式)为
计算以获取上下文管理器
将加载上下文管理器的\uuuuu exit\uuuu()
,以供以后使用
将调用上下文管理器的\uuuu enter\uuu()
方法
如果with语句中包含目标
,则
\uuuu enter\uuuu()已分配给它。
。
target
是指将open(filename)
的返回值指定给的变量。这不可能是函数调用。您似乎把和语句与for
语句混淆了。在
for i, x in enumerate(lst):
i
和x
设置为从enumerate
创建的迭代器中获得的值。在
with open(filename) as f:
f
被分配open
的返回值
你不能把两者混为一谈。您需要使用两个单独的语句:
with open(filename) as f:
for index, line in enumerate(f):
您似乎混淆了和语句以及for
语句。在
for i, x in enumerate(lst):
i
和x
设置为从enumerate
创建的迭代器中获得的值。在
with open(filename) as f:
f
被分配open
的返回值
你不能把两者混为一谈。您需要使用两个单独的语句:
with open(filename) as f:
for index, line in enumerate(f):