[英]using raw_input in a while loop and assigning it to a variable?
is42= False
while(raw_input()):
d = _
if d == 42:
is42 = True
if not is42:
print d
对于此python代码块,我想在交互式提示模式之外使用。 所以我不能使用_作为最后的输出。 如何将raw_input分配给变量? 我正在一个站点外锻炼。 输入是大约5个值,我想为每个对应的输入值吐出一些输出。 接受此输入的最佳方法是什么?
这似乎是非常低效的逻辑。 您还真的需要is42状态标志吗? 如果没有,您可能想要类似
stuff = raw_input()
while stuff:
if stuff != "42":
print stuff
stuff = raw_input()
这样足以解决您的麻烦吗?
is42=False
while(!is42):
d = int(raw_input("Enter a number: "))
is42 = d==42
print "d = ", d
如果我正确理解了您的问题的要求,就应该这样做。
嗨,欢迎来到Python!
raw_input()
函数以字符串形式返回输入。 因此,在d = _
,可以将其替换为d = raw_input()
。 我要问你的一个问题是,为什么你在while条件下拥有它? 如果您希望它不断询问用户一个数字,则将while(raw_input()):
替换为while True:
while(raw_input()):
还有一件事, raw_input()
总是返回一个字符串。 因此,如果您运行print '30' == 30
,您将看到字符串表示形式30与数字表示形式30不相等。但这不是问题! 通过将d = raw_input()
替换为d = int(raw_input())
可以将raw_input()
的返回值转换为整数类型。
现在,当用户为您提供无法转换为整数的输入,但是处理可能对您来说是一个练习时,就会出现另一个问题。 :)
最终代码:
is42= False
while True:
d = int(raw_input())
if d == 42:
is42 = True
if not is42:
print d
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.