错误非常简单。
“TextMobject”未定义
这是一个抱怨,您TextMobject
没有在代码中的任何地方定义,也没有导入。
编辑
在附加评论和信息之后,问题是manim
库已经更新并且当前版本已经重组了其内部代码组织。您链接到的指南引用了一个旧版本manim
,您会在哪里做from manimlib.imports import
,就好像有一个单独的imports.py
.
但是,更新的版本将要求您执行以下操作:manimlib import *
. 这可以通过查看官方存储库的指南来确认。同样,这是更新的 examples_scene.py
,同样来自它的官方存储库。
from manimlib import *
class FirstScene(Scene):
def construct(self):
text=TextMobject("text")
self.add(text)
如果它抱怨Scene
找不到,请检查您是否安装了最新版本的软件包(git clone
如果您使用的是过时版本,请再次重新安装)。如果您想显式导入它,最新版本指向Scene
此位置(https://github.com/3b1b/manim/blob/master/manimlib/scene/scene.py),因此您的导入路径为manimlib.scene.scene
:
from manimlib.scene.scene import Scene
但是,如果您使用from manimlib import *
它,那么在没有显式导入的情况下也会被导入。
您可以在包裹上确认这一点__init__.py
,链接在这里:
...
from manimlib.scene.scene import *
...
无论哪种方式,TextMobject
都应该由您定义,或者在使用之前导入。我建议您进行更新,然后使用上面的代码重试。
编辑 2
Scene
根据@giac 的回答,除了您 import 方式的变化外,TexMobject
还重命名为Tex
并重TextMobject
命名为TexText
. 我不会指望它仍然是真实的或者是唯一的变化,所以如果你偶然发现这里试图得到答案,我建议你查看官方存储库的指南。