python - 错误 : video system not initialized (kivy, ipython)

标签 python ipython kivy

我为 IPython 创建了以下 ipython_config.py 脚本:

c = get_config()
c.TerminalInteractiveShell.editor = 'C:\PROGRA~2\NOTEPA~1\NOTEPA~1.exe'

现在,当我 %edit 一些文件时,我得到了相当不受欢迎的行为,也就是说,它开始在 Notepad++ 中编辑并立即执行代码。说:

%edit 'C:/Python27/share/kivy-examples/widgets/textinput.py'

这会在 Notepad++ 中启动编辑 textinput.py(目前一切顺利)并立即启动此应用(不好)。

更糟糕的是,当我第二次开始编辑时,它确实启动了 N++,但是 kivy 应用程序无法再次运行,除了这个异常(exception):

C:\Python27\lib\site-packages\kivy\core\window\window_pygame.pyc in flip(self)
    217
    218     def flip(self):
--> 219         pygame.display.flip()
    220         super(WindowPygame, self).flip()
    221

error: video system not initialized

如何解决这个问题?也就是说,我希望 IPython 能够:

  1. 等待 N++ 完成编辑(比如 WinSCP 能够识别您已使用外部编辑器完成编辑,然后才上传更改的文件)。

  2. 不会在一次运行后搞砸 kivy 启动。

最佳答案

您需要利用 InteractiveLauncher . Tshirtman也做了个小video展示如何使用它。 documentation page 中提到了要避免的所有陷阱和更多详细信息的特征。

关于python - 错误 : video system not initialized (kivy, ipython),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16034874/

相关文章:

python - 每次将点添加到 CSV 文件时更新图表 - python

python - 向 tkinter 文本小部件添加高级功能

python - 使用 "$gte"和 "$lte"时 Pymongo 返回错误

python - 具有调试和 iPython 集成的 Python IDE?

python - 如何在循环中加上整数值

android - 使用kivy向服务器发送数据

python - 更新 Kivy 中子对象小部件的位置(Python 不是 .kv)

python - 学习编写可重用的库

python - Jupyter Notebook 无法使用 pip 卸载软件包

python - 从 Notepad++ 启动和关闭交互式 ipython session 的正确方法