Python 2.7 return语句和print语句中出错

Python 2.7 return语句和print语句中出错,python-2.7,error-handling,Python 2.7,Error Handling,当我从代码中删除*1语句时,输出显示打印语句*2中的错误。请解释发生了什么。我是新手 输出: from __future__ import division if __name__ == '__main__': n = int(raw_input()) x = raw_input().split() def addlist(list): i=0 for entry in list: i = i + int(entr

当我从代码中删除*1语句时,输出显示打印语句*2中的错误。请解释发生了什么。我是新手

输出:

from __future__ import division
if __name__ == '__main__':
    n = int(raw_input())
    x = raw_input().split()

    def addlist(list):
        i=0
        for entry in list:
            i = i + int(entry)
        return i


   def median (x,n):
       x.sort()
       if n%2==0:
          return (int(x[n//2]) + int(x[n//2-1])/2
       return x[(n-1)//2]  #SyntaxError: invalid syntax *1

   print (addlist(x))/n  #SyntaxError: invalid syntax *2
   print median(x,n) 

返回(int(x[n//2])+int(x[n//2-1])/2
行中有一个额外的括号…请删除起始括号,或在结尾处用
将其关闭。与许多Python错误一样,您希望在执行之前检查该行。看起来有一个额外的括号,这就是为什么在删除*1时它会导致*2失败的原因,因为正是上面的那行导致了问题。@zwer Done。但它仍然显示相同的错误。您可以尝试计算表达式并将其存储为变量,然后尝试返回变量。它可能会帮助您更有效地调试问题。不确定它是否是粘贴在此处的方式,但第13-20行的间距不正确,需要再添加一个空格。另外,在(int(x[n//2])删除第16行的(at)应该可以解决这个问题。
File "solution.py", line 18
return x[(n-1)//2]  #SyntaxError: invalid syntax
     ^
SyntaxError: invalid syntax