Python一直告诉我语法无效
In [7]: File "/tmp/ipython-4302iuN.py", line 26
for n in N:
^
SyntaxError: invalid syntax
它出现在第26行的原因并且我这里没有26行是由于shebang行和评论。
L = 80.0
N = 2 ** np.arange(0, 10, dtype = np.float64)
dt = 0.0002
tmax = 10
nmax = int(np.floor(tmax / dt)) # also try ceil/floor
deltax = []
error = []
u = 2. * (2. / (np.exp(x + 20.) + np.exp(-x - 20.)) ** 2
for n in N:
dx = L / n
我尝试使用带整数的范围作为测试。我打开了一个单独的ipython并运行了
for n in range(1, 2):
dx = 10 / n
哪个工作得很好。
语法有什么问题?
我关闭了python并重新打开了,但这也无济于事。
答案 0 :(得分:6)
当遇到神秘的语法错误时,请始终看上面:
>>> s = "u = 2. * (2. / (np.exp(x + 20.) + np.exp(-x - 20.)) ** 2"
>>> s.count("(")
4
>>> s.count(")")
3
答案 1 :(得分:4)
您忘了在此处添加结尾括号
u = 2. * (2. / (np.exp(x + 20.) + np.exp(-x - 20.)) ** 2)
^
最重要的是,您尚未在此处定义x
:
u = 2. * (2. / (np.exp(x + 20.) + np.exp(-x - 20.)) ** 2)