在使用Inkscape时,我经常遇到错误提示,这些错误似乎暗示着一个Python 2和3版本不兼容的问题,虽然我已经同时安装了这两个版本。例如,当我尝试从模板新建文档时,会出现以下错误:
Traceback (most recent call last):
File "empty_generic.py", line 82, in <module>
c.affect()
File "/usr/share/inkscape/extensions/inkex.py", line 285, in affect
self.output()
File "/usr/share/inkscape/extensions/inkex.py", line 272, in output
self.document.write(sys.stdout)
File "src/lxml/lxml.etree.pyx", line 2033, in lxml.etree._ElementTree.write (src/lxml/lxml.etree.c:63667)
File "src/lxml/serializer.pxi", line 524, in lxml.etree._tofilelike (src/lxml/lxml.etree.c:134877)
File "src/lxml/lxml.etree.pyx", line 324, in lxml.etree._ExceptionContext._raise_if_stored (src/lxml/lxml.etree.c:10737)
File "src/lxml/serializer.pxi", line 441, in lxml.etree._FilelikeWriter.write (src/lxml/lxml.etree.c:133581)
TypeError: write() argument must be str, not bytes
似乎最后一行就是我所说的——通常这个错误是由于使用Python 3解释器运行Python 2代码引起的,可以通过将字符串对象str作为str.decode()
传递或其他方式来修复。显然,编辑inkscape源代码并不是一个理想的解决方案。
此外,在尝试生成Voronoi图时,我遇到了以下问题:
Traceback (most recent call last):
File "voronoi2svg.py", line 36, in <module>
import simplepath
File "/usr/share/inkscape/extensions/simplepath.py", line 51
raise Exception, 'Invalid path data!'
^
SyntaxError: invalid syntax
这似乎又是一个明显的2 vs. 3错误。
有没有办法更改Inkscape使用的Python解释器?
python-interpreter="/usr/bin/python3.7
。语法错误消失了,但是当我点击“应用”时,什么也没有发生。没有弹出错误,也没有生成gcode文件。 - Edwin Varghese/home/username/anaconda3/bin/python
。我去视图>消息
查看日志并单击捕获日志消息
。然后我找到了问题的原因。 - Edwin Varghese