2016-08-15 60 views
-2
mark = raw_input 

if mark < 50: 
    print "your mark is unsatisfactory!" 

else: 
    print "your mark is satisfactory!" 

我想根据用户输入的数字来创建答案。但是,当我运行代码时,它只会显示“您的商标令人满意!”我似乎无法弄清楚为什么它不让我输入数字。为什么python忽略我的其他代码行?

+2

你需要真正调用'raw_input',像'raw_input()'。目前你只是创建了一个对函数的引用。 –

+0

简单的答案是'raw_input()'(注意圆括号!)返回一个*字符串*不是一个整数。这是重复的,尽管我无法找到副手目标 – Ajean

回答

0

您需要拨打raw_input。现在你只需要函数的值,它总是为真(因为对于Python来说,函数是真实的)。添加一些括号使其raw_input()实际调用该函数。你也想调用int(raw_input())从字符串中获得一个整数。

0

呼叫raw_input,像

mark = int(raw_input("enter something")) 

if mark < 50: 
    print "your mark is unsatisfactory!" 
else: 
    print "your mark is satisfactory!" 

注意转换为int,因为raw_input返回一个字符串。

此刻你正在做的是创造是指功能raw_input另一个变量,它比较对50

0

那是因为你不调用该函数。

你要做的:

answer = raw_input('your question') 

此外,answer的类型是str。因为它看起来像你想将它用数字比较,你必须转换成一个数字:

answer = int(answer) # if you want an int 
answer = float(answer) # if you want a float 

注:通过做

mark = raw_input 

mark

现在等于功能,女巫意味着如果你这样做mark('...'),它会做同样的事情比raw_input('...')

相关问题