【发布时间】:2014-02-25 21:19:31
【问题描述】:
为什么当我使用下面的程序时,我总是在引号中得到“y”,而不是 y 定义的值,这将是用户输入的字符串
def main():
x = (input("Give me a boolean: ").lower() == 'true')
y = str(input("Give me a string: "))
z = int(input("Give me a number: "))
if x == True:
print (y)
print ("\"",y,"\"",sep="")
else:
print (z*2)
main()
【问题讨论】:
-
什么?我不明白这个问题......你能解释一下吗?顺便说一句,你的
or true是错误的,没用的。 -
好的,如果用户为“给我一个布尔值”输入“true”或“True”,我希望它打印字符串(y)两次,一次带引号,一次不带引号
-
只是一个提示.. 字符串
"False"是True。也许x应该是input("boolean: ").lower() == "true" -
@adsmith 除非
true已定义。如果true是True,那么if条件将始终得到满足,如果true是False,那么条件的or部分不会执行任何操作。 -
我打算做一个 {if} [else] 语句,我只是没有在代码中做到那么远,我只是想在我写 else 语句之前弄清楚报价问题
标签: python string input integer boolean