语法无效:向输入添加10

时间:2016-11-03 03:16:36

标签: 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)

当我输入完全相同的东西,同样的缩进和所有内容时,它适用于她,但不适用于我。旁边有一个十字架(代码分析)出现在以“总和”开头的行上。显然,语法无效。感谢。

1 个答案:

答案 0 :(得分:0)

让我们逐行看看..

elif x== '3' :

应该是:

if x == '3':

您应该使用if而非elif的语句开始。另外,请确保代码中的x前面有一个值。

如果你是全新的,我会再等一会儿来添加try:个陈述。但我会在最终答案中加入它。

the sum = int(float(number)+(float(10))

应该是:

the_sum = float(number) + 10

如果您希望float有小数,请使用number。根据您提供的信息,无需将float转换回int,这是您拨打int(float(...

时正在执行的操作

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

print(number + 'plus 10 equals'+ the sum)

Python2和Python3有不同的格式输出选项。更多信息here。我将使用Python2,所以你的代码应该是:

print ('%f plus 10 equals %f' % (number, the_sum))

%f表示将变量格式化为float。第一个%f将替换为number,第二个the_sum将替换为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:

加分:输入字符时脚本是否会中断?你怎么能用render()语句改进?