如何解决SyntaxError:没有解决方案的无效语法
我试图解释这种特殊情况。
使用的文件是启动神经元仿真的基础,它们是用于Python 2的。使用Atom的插件,我手动修复了所有缩进错误和详细信息。
Traceback (most recent call last):
File "./protocols/01_no_channels_ais.py",line 4,in <module>
from Purkinje import Purkinje
File "/Users/simonet/Desktop/purkinjecell/Purkinje.py",line 202
listgmax = []
^
SyntaxError: invalid Syntax
来自文件Purkinje
self.subsets_cm = np.genfromtxt("ModelViewParmSubset_cm.txt")
for cm in self.subsets_cm:
for d in self.ModelViewParmSubset[int(cm[0])]:
d.cm = cm[1] * 0.77/1.64
self.dend[138].cm = 8.58298 * 0.77/1.64
self.subsets_paraextra = np.genfromtxt("modelsubsetextra.txt",dtype=[('modelviewsubset','f8'),('channel','S5'),('channel2',('value','f8')])
for para in self.subsets_paraextra:
for d in self.ModelViewParmSubset[int(para[0])]:
d.insert(para[1])
exec('d.gmax_'+para[2]+' = '+str(para[3])
listgmax = [] ############ PROBLEM WOULD BE HERE ##############
for d in self.ModelViewParmSubset[2]:
d.gmax_Leak = d.gmax_Leak/2
self.dend[138].insert('Leak')
self.dend[138].gmax_Leak = 1.74451E-4 / 2
“ listgmax”是此代码中的唯一术语。我不明白问题出在哪里。
如果我将其删除,问题将在下一行中继续出现,并且出现相同的Sintax错误。
你能帮我吗?
非常感谢您的时间。
希望我很清楚。
解决方法
错误很简单,您忘记了上一行的右括号,所以只需说:
exec('d.gmax_'+para[2]+' = '+str(para[3]))
这应该纠正错误。请记住此类SyntaxError: invalid syntax
的问题,主要是您缺少括号或其他内容。
如有任何疑问或错误,请告诉我
欢呼
,您在前面的行中缺少右括号。应该是:
exec('d.gmax_' + para[2] + ' = ' + str(para[3]))
Python解释器将在下一行报告该错误,因为这是它可以告诉您的最快的消息,它不只是在那里继续相同的表达式。通常,对于语法错误,如果您找不到错误的确切报告位置,那么可以在上面查看。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。