当我输入一个负数时,它会打印出'抱歉'#39;不是绝对的数字,我做错了什么?

时间:2015-01-08 01:07:06

标签: python-3.x

def function_1():
    var_1 = input('''Enter any number''')
    if type(var_1) == int:
        print (abs(var_1))
    else:
        print ('''sorry''')

function_1()

当我输入一个负数时,它会打印else语句'抱歉'而不是给我绝对数字

1 个答案:

答案 0 :(得分:1)

在Python 3中,input()始终返回一个字符串。

在Python 2 input()中将文本评估为Python表达式,raw_input()返回一个字符串,这种行为容易出错,因为最直观的输入模式可能会引入不同的错误和意外行为。出于这个原因,在Python 3中input()的行为类似于{2}中的raw_input()

您可以使用以下内容将输入转换为int

var_1 = int(input())