Python - 防止在打印文件内容后关闭文件
Python - Preventing closing a file after printing its content
我想用 python 读取一个文件,先打印它的内容,然后再对它的数据进行操作。
这是我的代码:
with open("myFile.txt", 'rw') as inputFile:
print(inputFile.read())
for i,j in enumerate(pdbFile):
do whatever
count the lines
print("Number of lines", numberOflines)
这种情况下的输出是numberOfLines = 0
。
但是,如果我注释命令 print(pdbFile.read())
,它会给出正确的行数。所以显然文件在读取文件后被关闭。
如何强制 python 在我完成计算之前保持文件打开?
在 read()
文件之后,您到达了它的末尾,虽然您的文件仍然打开,但没有任何行可以迭代。
所以,要么:
- 不要在
for
循环之前 read
它,或者;
- 使用
seek(0)
或; 读取文件后返回到文件开头
- 关闭再打开。
我想用 python 读取一个文件,先打印它的内容,然后再对它的数据进行操作。
这是我的代码:
with open("myFile.txt", 'rw') as inputFile:
print(inputFile.read())
for i,j in enumerate(pdbFile):
do whatever
count the lines
print("Number of lines", numberOflines)
这种情况下的输出是numberOfLines = 0
。
但是,如果我注释命令 print(pdbFile.read())
,它会给出正确的行数。所以显然文件在读取文件后被关闭。
如何强制 python 在我完成计算之前保持文件打开?
在 read()
文件之后,您到达了它的末尾,虽然您的文件仍然打开,但没有任何行可以迭代。
所以,要么:
- 不要在
for
循环之前read
它,或者; - 使用
seek(0)
或; 读取文件后返回到文件开头
- 关闭再打开。