Python readline() 不工作?
我正在做一个小程序来帮助我学习Python(我对这个语言还很陌生)。我使用的是Python 3.2。
在Python的命令行界面中,当我输入
f = open('filename.txt', 'r')
f.readlines()
时,它会把filename.txt
里的所有内容都打印出来。但是,当我在一个新窗口中输入这段代码并保存为.py
文件后,运行时却没有任何输出。而且也没有出现错误信息。
我的代码大致是这样的:
f = open('filename.txt', 'r')
f.readlines()
while True:
f = open('filename.txt', 'a')
inp = input('Enter text: ')
rest of code...
我该如何在执行任何while
语句之前,打印出文件里的所有内容呢?
3 个回答
2
Python解释器有两种不同的运行模式:
第一种是交互模式。在这个模式下,你会看到一个
>>>
的命令提示符。你只需要在命令行输入python
或python.exe
就可以进入这个模式。在交互模式中,你输入的任何函数或表达式的返回值都会直接显示出来,方便你查看。第二种是脚本模式。当你在命令行输入
python <yourscript.py>
时,就进入了这个模式。在脚本模式下,Python不会显示你的脚本内容,也不会显示你输入的语句的返回值。
如果你想让Python脚本在控制台上显示一些内容,可以使用print()
函数。
print(f.readlines())
想了解更多关于Python解释器的信息,可以查看python.org。
2
在你的代码中试试这个:
print(f.readlines())
当你在命令行中输入表达式时,系统会计算并显示结果。但是,如果你是想从文件中运行你的程序,那么你需要明确地使用print
来输出你想在控制台上看到的值。
5
不过,当我在一个新窗口里输入它并保存为
.py
文件时
加一个 print
调用。在交互式环境中,最后输入的表达式的值会自动显示出来,这样很方便,但在脚本中这样做很快就会让人觉得烦。