此代码适用于IDLE,但不适用于命令行。为什么不同?
poem = 'poem.txt'
f = file(poem)
while True:
line = f.readline()
if len(line) == 0:
break
print line,
f.close()
poem.txt
文件存在(它是一个字符串)。 shell输出是这样的:
"Programming is fun When the work is done if you wanna make your work also fun: use Python!"
命令行输出为:
"No such file or directory: 'poem.txt'"
poem.txt
文件与.py
文件位于同一文件夹中。这里出了什么问题?
答案 0 :(得分:7)
我相信你并没有从poem.txt所在的目录中运行python脚本。通过输入验证:
import os
print os.getcwd()
在你的剧本中。
看起来我是对的。当您运行:C:/Users/Python/filepractice.py
时,当前工作目录是您运行它的目录,而不是filepractice.py所在的目录。
如果在cmd.exe中执行此操作
c:
cd \Users\Python
python filepractice.py
它可能会奏效。