Python函数中的语法无效

时间:2018-03-15 10:14:19

标签: python function syntax

[joepareti54@xxx build]$ ./manta ../scenes/_trainingData.py --dim 3 --addModelGeometry True --addSphereGeometry True
Version: mantaflow 64bit fp1 commit dd3bb0c0a65cc531d3c33487bde5edcb4aa6784f from Mar 14 2018, 14:53:44
Loading script '../scenes/_trainingData.py'
Traceback (most recent call last):
  File "../scenes/_trainingData.py", line 12, in <module>
    from Emitter import *
  File "/home/joepareti54/FluidNet/manta/scenes/Emitter.py", line 15, in <module>
    import matlabnoise
  File "/home/joepareti54/FluidNet/manta/build/../../../matlabnoise/matlabnoise.py", line 81
    def Perlin2D(*args) -> "double" :
                        ^
SyntaxError: invalid syntax

我认为无效语法出现在:

def Perlin2D(*args) -> "double" :`enter code here`
  return _matlabnoise.Perlin2D(*args)
Perlin2D = _matlabnoise.Perlin2D

1 个答案:

答案 0 :(得分:1)

您的问题是mantaflow正在运行嵌入式Python,因此使用的版本是编译mantaflow时可用的版本,并且看起来该版本不支持Python中引入的类型注释3.5

运行which python时会显示系统上安装的Python版本,而不是编译到其他程序中的版本。

解决方案包括使用更新的Python重新编译mantaflow,或者停止使用类型注释。