1

我目前正在尝试学习 Python,并且正在学习如何像计算机科学家一样思考:学习 Python。我已经在 Mac OSX 10.4.11 上安装了 Python 2.6.2 并且正在使用 IDLE。

在第 4 章结尾处 Elkner 等人。参考 GASP。但是,当我输入时,他们的说明不起作用:

>>> from gasp import*

我得到:

Traceback (most recent call last):
  File "<pyshell#17>", line 1, in <module>
    from gasp import*
ImportError: No module named gasp

我在谷歌上环顾四周,只能找到过时的安装方法或 gobbledegook 页面。我相信我必须先安装 PyObjC 并且也无法完成此操作。

任何人都可以帮我一些简单的英文说明吗?

4

3 回答 3

2

大家好,对于不完整的句子和整体英语很差,我很抱歉,但我想让这个简单易读和理解的人在任何类型的编程方面都完全没有经验,就像我一样(第一天弄乱这些东西,例如终端)。这是在一天内完成的数小时谷歌搜索的结果。也许熟悉以下命令(粗体)的人不会介意解释到底发生了什么。此外,这一切都是在运行 Mac OS Lion 的 MacBook Pro 上的终端中完成的。

  1. 安装 macport 二进制文件(附带安装程序;简单)
  2. sudo port install py-game

    不确定这是否有必要,因为它似乎不会导致 pygame 对 python 版本 2.7.1 (stock python on lion) 起作用

  3. sudo port select --set python python 2.7

    我相信这会将默认的 python 版本设置为 2.7.2,我也相信它是在步骤 2 中下载的(因此我认为这最终是一个必要的步骤)

  4. 下载 setuptools-0.6c11-py2.7.ta​​r
  5. 在单击 .tar 后出现的文件夹 gasp-0.3.4 中,放入setup.pygasp
    文件夹
  6. sudo python gasp/setup.py install

    确保您的目录是文件夹 gasp-0.3.4

  7. sudo port –v install py27-pygtk

    此步骤大约需要一个小时才能完成

  8. sudo port uninstall py-game

    这一步对于gasp工作来说不是必需的;我只是不想在第二步下载的电脑上有任何不必要的东西;但是,此步骤将 python 2.7.2 放在我的计算机上;我想可以单独安装 2.7.2 但这种方式对我有用;在此步骤中也安装了许多其他不必要的东西,但我认为即使在此命令之后它也会保留,哦好吧

于 2011-09-21T21:10:48.497 回答
1

这实际上有点巧合。我是 GASP 的包装商之一。在我们的主项目页面链接的下载页面上,有关于如何在大多数主要平台上安装它的说明。但是,没有考虑过 OSX。一会儿会写点东西。

本质上,从 PSF安装官方 Python 。然后添加MacPorts并运行

sudo ports install py-game

从上面链接的下载页面中提取源 tarball 到您的站点包目录。

还有一些我发现可能会更好的替代指令,因为我没有测试过上面的内容。

于 2009-06-21T22:18:10.640 回答
0

这是大多数使用“如何像计算机科学家一样思考:使用 Python 学习”的读者在读到第 4 章时面临的一个有趣问题。

现在要安装 GASP,您需要检查您的机器上是否安装了 python。

假设:我将假设您使用的是 Mac。

在终端上键入以下命令,

`$ python -V`  

{如果您的系统上安装了 python,您将得到类似 Python 2.7.1 的答案(如果版本是 2.7.1)。}

一旦你的系统上有 python 可用,你应该安装 PyObjC。

一个简单的方法是在终端提示符下输入,

`$ easy_install pyobjc==2.2` 

{这将安装 2.2 版}

下一步是安装 pygame 包,您可以通过两种方式下载 .dmg 文件或使用“homebrew”。我更喜欢第二种方法。

要使用“brew”安装 pygame 包,您必须先安装 mercurial。这是一个简单的过程,只需输入

$ brew install mercurial

然后输入以下命令,

$ brew install sdl sdl_image sdl_mixer sdl_ttf smpeg portmidi 
$ sudo pip install hg+http://bitbucket.org/pygame/pygame

下一步是安装 GASP。从https://launchpad.net/gasp-core/+download下载 gasp

解压 .tar 文件,你会得到一个文件夹结构。我们的目标是将名为“gasp”的文件夹复制到系统库文件夹中。要检查使用了哪个文件夹或 python 版本,并在终端上的以下命令中了解它们的正确路径类型。

$ python -c 'import sys, pprint; pprint.pprint(sys.path)'

通常它会打印一个类似于 '/Library/Python/2.7/site-packages' 的路径,你可以注意到它是上述命令生成的输出的最后一行或倒数第二行。

将 gasp 文件夹复制到 site-packages 文件夹,

$ sudo cp -R ~/Desktop/python-gasp-0.1.1/gasp/ /Library/Python/2.7/site-packages/gasp

这应该将所有必需的文件复制到指定为第二个参数的位置。

现在转到终端并输入

$ python
>>> import gasp

如果一切顺利,您将不会收到任何错误或任何消息。

PS:确保在您的站点包目录中没有 pygame/gasp 的重复副本。在重复的情况下,它可能会发脾气。此外,如果任何步骤出错,您可能会在 gasp 包中 base.py 的第 25 或第 26 行出现错误“import cairo”。在这种情况下,请通过删除 pygame 和 gasp 并重新安装来清理您的站点包目录他们,这应该解决它。

此外,在安装 mercurial 时,您可能会收到一些与证书相关的警告。您可以通过键入以下命令来解决它们,

$ openssl req -new -x509 -extensions v3_ca -keyout /dev/null -out dummycert.pem -days 3650
$ sudo cp dummycert.pem /etc/hg-dummy-cert.pem
$ cd ~
$ nano .hgrc 

{ 这将打开一个空的 .hgrc 文件}

输入以下内容

[网络]

cacerts = /etc/hg-dummy-cert.pem

按 ctrl+ 保存以上 2 行 o 按 ctrl + x 退出 nano

而已。这应该可以解决您在安装 GASP 时遇到的问题,并享受“如何像计算机科学家一样思考”这本书,它是对计算世界的精彩介绍。

于 2012-06-21T17:31:22.577 回答