给定python代码的print语句的语法错误是什么原因

时间:2016-05-27 05:08:32

标签: python printing syntax-error concatenation

xString = input("Enter a number: ")
x = int(xString)
yString = input("Enter a second number: ")
y = int(yString)
print('The sum of ', x, ' and ', y, ' is ', x+y, '.', sep='')

执行上面的代码时,解释器抛出语法错误,说法语错误如下。

 print(?The sum of ?, x, ? and ?, y, ? is ?, sum, ?.?, sep=??)

SyntaxError:语法无效

3 个答案:

答案 0 :(得分:5)

这是因为那些古怪的引用字符如。将它们更改为'个字符,您不应该有任何问题。

答案 1 :(得分:3)

print语句中使用的单引号为',ascii值为39。

>>> ord("'")
39

问题中print语句中使用的不是引用',而是RIGHT SINGLE QUOTATION MARK' (U+2019)

>>> u"’"
u'\u2019'

因为您正在使用python 2,要在print语句中使用sep,您需要从以后导入功能

from __future__ import print_function
print('The sum of ', x, ' and ', y, ' is ', x+y, '.', sep='')

答案 2 :(得分:0)

首先,将替换为'

其次,您可能需要再添加一个句子:from __future__ import print_function