2

我阅读Learn Python The Hard Way的一个问题:

y = raw_input("Name? ")

将结果放入变量 y。

然后在下面代码的第 9 行,raw_input("?"),结果到哪里去了?

from sys import argv

script, filename = argv

print "We're going to erase %r." % filename
print "If you don't want that, hit CTRL-C (^C)."
print "If you do want that, hit RETURN."

raw_input("?")

print "Opening the file..."
target = open(filename, 'w')

...
4

3 回答 3

3

简而言之,它不会被存储 - control-C ( ^C) 让解释器停止执行它正在执行的操作并退出。如果您在问号处键入任何其他内容(当然按Enter),程序将运行。raw_input那里只是等待用户输入。

于 2013-01-17T05:08:07.983 回答
1

不存储输入。这里raw_input用于确认的目的,所以输入的值是无关紧要的;该程序只关心等待直到按下Enter或。Ctrlc

于 2013-01-17T05:09:38.497 回答
1

在你的情况下raw_input("?")代表类似Press any key to continue

在非交互模式下 _ 没有特殊含义。

python解释器将“_”理解为对它计算的最后一个值的引用,输入存储在一个特殊的变量中_

In [83]: raw_input("Enter : ")
Enter : Hi There
Out[83]: 'Hi There'

In [84]: _
Out[84]: 'Hi There'
于 2013-01-17T05:10:54.833 回答