在不显式打开X11的情况下启动Python脚本

1 投票
3 回答
2133 浏览
提问于 2025-04-15 17:01

我之前在系统上安装的是Python 2.3。当我想运行一个Tkinter脚本时,只需要用下面的命令就可以了:

python myscript.py

最近我升级到了Python 2.5,现在在运行任何脚本之前,我需要先启动X11,并且设置好“DISPLAY”这个环境变量。这对我来说很麻烦,因为我不能在没有明确说明的情况下分发我的脚本,必须告诉别人“如果你使用的是Python 2.3以上的版本,你需要在运行这个脚本之前先打开X11”。请问有没有什么解决办法?我现在是在OS X Tiger系统上。

3 个回答

0

我安装了Python 2.6.4,运行的时候没有遇到任何问题,也不需要$DISPLAY这个变量...

我是在Linux系统上...

1

从python.org网站上下载并安装 python2.5python2.6,适用于OS X系统。这些版本使用了本地的Aqua Tk,所以在运行IDLE或者使用Tkinter的Python脚本时,不需要额外安装X11。

0

如果我猜得没错(而且我确实在猜……),听起来你安装的是一个基于X11的Python和Tkinter版本,而不是一个使用Mac OSX本地窗口系统的版本。你可以放心地编写你的脚本,而不需要告诉别人他们必须运行X11。你只需要说明他们需要有一个合适的环境——要么是本地版本的Python+Tkinter,要么是运行X11并且使用基于X11的Python+Tkinter。

换句话说,这并不是Python的一个回归问题,你不需要为此调整代码,这只是你特定的Python安装带来的一个副作用。

撰写回答