Python input()命令不适用于升华文本3

Python input()命令不适用于升华文本3,python,python-3.x,input,sublimetext3,Python,Python 3.x,Input,Sublimetext3,我正在尝试使用input()编写一个add()函数,但是似乎输入对我来说并不起作用。 模块如下所示: def add (n1, n2): return (n1+n2) def main (): print (add(input("Enter number one, please:"),input ("Enter number two, please:"))) if __name__ == "__main__": main() def add (n1, n2):

我正在尝试使用
input()
编写一个
add()
函数,但是似乎输入对我来说并不起作用。 模块如下所示:

def add (n1, n2):

    return (n1+n2)

def main ():

    print (add(input("Enter number one, please:"),input ("Enter number two, please:")))

if __name__ == "__main__":
    main()
def add (n1, n2):

    return (n1+n2)

def main ():

    print (add(float(input("Enter number one, please:")),float(input ("Enter number two, please:"))))

if __name__ == "__main__":
    main()
当运行时,我只得到“请输入一号:”提示,当输入一个实际数字并按Enter键时,实际上什么都没有发生。 我试图得到“升华输入”软件包,但没有用


我希望在不使用Ubuntu的情况下运行它(我使用的是Windows 8.1)。

首先,Python 3中的
输入不再解释您提供给它的数据类型。这在本质上意味着你给它的所有东西都将被读取为一个字符串。这意味着
add
功能将无法按预期工作。要修复此问题,请将代码更改为以下内容:

def add (n1, n2):

    return (n1+n2)

def main ():

    print (add(input("Enter number one, please:"),input ("Enter number two, please:")))

if __name__ == "__main__":
    main()
def add (n1, n2):

    return (n1+n2)

def main ():

    print (add(float(input("Enter number one, please:")),float(input ("Enter number two, please:"))))

if __name__ == "__main__":
    main()
内置的
float函数的添加确保了将中的输入转换为浮点,因此您可以对其进行数学运算


第二,升华文本3仍处于beta开发阶段。这意味着某些功能可能无法按预期工作。尝试使用升华文本2。另外,我在命令行中使用
python add.py
运行了上述代码,它运行得非常好。注意:我将该文件保存为
add.py

我不熟悉sublime文本及其在交互模式下接受输入的方式,但您应该阅读,因为这并不是您希望它执行的操作。当我在Windows 7上运行您的代码时,这可能不是执行该任务的最佳方式,但它可以工作。相关:即使这样做有效,它可能不会做你期望它做的事情。对于1和2,您将得到'12',因为
input
返回一个字符串。我按照您所说的做了,模块现在看起来是这样的:def add(n1,n2):return(n1+n2)def main():print(add(float)(float)(输入(“输入1号,请:)),float(输入(“输入2号,请:)))如果name==“main”:main()我还尝试使用字符串构建一个模块,因为您说这是input()的默认值,但它仍然不起作用。这就是:def main():person=input(“给我一个词:”)如果name==“main”:main()打印(person)