Anjuta中的Python3支持

时间:2012-09-10 04:59:28

标签: python-3.x gnome anjuta

我最近下载并安装了Anjuta作为Python开发的工具。我正在使用Ubuntu 12.04平台上的Python 3.2.3进行开发。

Gnome Dev Center网站上的'创建新项目'建议后,我开始按照说明操作,但很快意识到该项目使用的是Python 2.7(系统默认)。

我在“编辑首选项”下找到了一个Python选项,但是将路径更改为指向我所需的Python版本似乎没有达到预期的效果。现在,每次打开Anjuta时,都会显示一条错误配置路径的消息。

我在网上找不到有关此事的任何信息。

有没有人有为Python3设置Anjuta的经验?请帮忙!

3 个答案:

答案 0 :(得分:2)

他没有询问自动完成情况。虽然这本身就是一个问题。这个页面的答案对我来说既没有解决问题。他指的是执行命令。当您执行代码时,它并不总是使用首选项中描述的python版本或您希望它使用的版本。检查.py文件的顶部。看看哪里有一个shebang命令

#!/usr/bin/python

将其更改为

#!/usr/bin/python3

或任何路径是您选择的解释器的路径。

如果这不存在,请将其放在.py文件的顶部,我几乎可以完全保证它可以解决您的问题。

我希望这个反应来得太晚,它仍然可以帮助那些迷失和困惑的地方。

它解决了我的问题。我花了整整一天的时间研究,最后通过阅读https://docs.python.org

中的python手册来解决这个问题。

这些文件中的大量信息,请检查出来!

如果这也解决了您的问题,请告诉我。

答案 1 :(得分:1)

错误消息是否有机会提到python-rope?如果是这样,错误可能与此库而不是python本身有关.. 我在Ubuntu 12.04上,最近安装了Anjuta& python3并发现了类似的问题。我将错误追溯到Anjuta用于自动完成的python-rope lib。我从Ubuntu repos安装了python-rope,但是安装的版本只适用于python2,所以我不得不从here手动安装python3端口,并用'sudo python3 setup.py install'安装它(里面) lib dir当然)。之后Anjuta停止了抱怨。

希望这有帮助。

答案 2 :(得分:1)

以下是如何让Python 3自动完成在Xubuntu 12.04上运行的Anjuta 3.4.0中运行:

sudo apt-get install anjuta anjuta-extras python3 python3-pkg-resources

从这里下载python3的最新版绳索:https://pypi.python.org/pypi/rope_py3k。安装绳索(可能调整版本号):

tar zxvf rope_py3k-0.9.4-1.tar.gz
cd rope_py3k-0.9.4-1/
sudo python3 setup.py install --prefix=/usr --install-lib=/usr/lib/python3/dist-packages
sudo ln /usr/lib/python3/dist-packages/rope_py3k-0.9.4_1-py3.2.egg-info /usr/lib/python3/dist-packages/rope-0.9.4_1-py3.2.egg-info

现在在命令行中运行python3并检查这些语句是否有效:

import rope
import pkg_resources
pkg_resources.get_distribution('rope').version

现在修补自动完成脚本以在Python 2和3版本下工作:

sudo nano /usr/lib/anjuta/anjuta-python-autocomplete.py

添加第一行:

from __future__ import print_function

然后将所有print blahblah命令修改为Python 3语法print(blahblah)print命令位于第124,143和144行。

现在启动Anjuta并将Edit-> Preferences-> Python-> Environment:指向/usr/bin/python3。重启Anjuta并自动完成应该可以。

如果需要更多调试,请尝试从命令行运行anjuta,到达您期望自动完成的位置,并查看终端中的输出。如果它仍然抱怨anjuta-python-autocomplete.py,请尝试手动在python3中运行此脚本。