Python 无效语法:将10添加到输入

Python 无效语法:将10添加到输入,python,Python,我一直在用spyder做一些蟒蛇游戏,而且对这一切都是全新的,我很困惑。我的朋友键入了以下代码: elif x== '3' : number = input('Enter an integer \n') try: the sum = int(float(number)+(float(10)) print(number + 'plus 10 equals'+ the sum) 当我输入完全相同的东西,相同的缩进等等的时候,它对她有效,但对我无效。在以“总和”开头的行上

我一直在用spyder做一些蟒蛇游戏,而且对这一切都是全新的,我很困惑。我的朋友键入了以下代码:

elif x== '3' :
  number = input('Enter an integer \n')
  try:
     the sum = int(float(number)+(float(10))
     print(number + 'plus 10 equals'+ the sum)

当我输入完全相同的东西,相同的缩进等等的时候,它对她有效,但对我无效。在以“总和”开头的行上出现一个叉号。显然,有无效的语法。谢谢。

让我们一行一行地看这个

elif x== '3' :
应该是:

if x == '3':
the_sum = float(number) + 10
您应该以if而不是elif开始if语句。另外,确保x在代码前面有一个值

如果您是全新的,我会再等一会儿添加try:statements。但我会把它包括在最后的答案中

应该是:

if x == '3':
the_sum = float(number) + 10
如果您希望数字有小数点,请使用浮点。根据您提供的信息,不需要将浮点值转换回int值,这是您调用intfloat时正在执行的操作

请注意,变量名中的空格不是有效语法。添加下划线将使_和有效

Python2和Python3有不同的输出格式化选项。更多信息。我将使用Python2,因此您的代码应该是:

print ('%f plus 10 equals %f' % (number, the_sum))
%f表示将变量格式化为浮点数。第一个%f将替换为数字,第二个替换为_和

你们总共有:

if x == '3':
  number = input('Enter an integer \n')
  try:
    the_sum = float(number) + 10
    print ('%f plus 10 equals %f' % (number, the_sum))
  except:
    pass

奖励:当你输入一个角色时,你的脚本会中断吗?如何使用try:语句进行改进?

请编辑您的问题并将其标记为Python,以便人们回答并取消标记SyntaxDone!谢谢:你是从哪里得到这笔钱的?这是无效的语法,我也不应该为你的朋友工作。也许你指的是下划线。