在Windows上缺少Python PIP安装子目录?

时间:2019-05-04 09:58:32

标签: python windows pip

我11岁的儿子试图遵循Carol Vorderman的“ Python Games for Kids”书籍,但是在Windows 10上安装然后使用Actors模块(本书第52页起)安装时遇到了一个基本问题。提供了有关安装或导入此产品的说明。我们使用pip安装了“演员”(0.5.1b1):

pip install actors

安装“愉快”地工作,没有错误报告,并且(基本)actor安装出现。 (我们也尝试了python -m pip install actors,结果完全一样。)

但是,任何试图导入演员的尝试;例如,

from actors import Actor

失败:

ModuleNotFoundError: no module name 'actors.internal'
actors\__init__.py第29行的

。这很公平,因为它确实尝试从似乎不存在的messages导入actors.internal

我在导入后检查的内容:

  • 下载的.tar.gz文件包含许多子目录,其中包括internal;但这并没有放入光盘中。因此,看来pip无法正确处理.tar.gz文件?但似乎很难相信,这种基本故障并未被发现。
  • 该光盘有116G可用空间,因此它没有空间不足。
  • 我检查了其他答案(python pip install not working on windowspip install on a shared directory (windows)),但似乎在这里并不适用。

2 个答案:

答案 0 :(得分:2)

这是发行版中的错误。它列出了packages=['actors'],,但也列出了must list all subpackagesinternalutils)。

该错误是2016年的reported,至今仍未解决。因此,我们可以猜测该软件包已被放弃,并且您无法对其进行任何修复(除了自己分叉和修复)。

答案 1 :(得分:1)

您需要通过Pygame Zero运行程序,因为它会为您添加一些内容(例如打开窗口,处理OS事件,定义Actor或Sprite是什么,等等)。

通过以下方式安装:pip install pgzero

然后通过正常运行python my_file.py

运行文件

您应该使用以下命令运行它:pgzrun my_file.py


如果这样不起作用,您可以尝试将import pgzrun放在程序的第一行,将pgzrun.go()放在程序的最后一行,然后使用python my_file.py正常运行文件。

Source for the fixes