像这样的 Github 文件是如何通过 pip 安装到我的计算机上的?我想在此文件结构中运行 pytest 文件。
我认为你有两件事感到困惑。
\n当您通常使用 来安装软件包时,它会从PyPipip下载该软件包的“发布文件” ,然后将使用该软件包所需的所有相关文件安装到本地 Python 的site-packages文件夹中。站点包的位置取决于您的 Python/配置、操作系统以及您是否使用虚拟环境。pip
如果这只是常规的pip,您可以用来pip show告诉您它安装了东西的位置。例如,在 Mac 上使用 Python3.8从 PyPi 安装 EasyGA 包:
$ python3 -V\nPython 3.8.5\n\n$ python3 -m pip install EasyGA\n...\nInstalling collected packages: blessings, EasyGA\nSuccessfully installed EasyGA-0.0.8 blessings-1.7\n\n$ python3 -m pip show EasyGA\nName: EasyGA\nVersion: 0.0.8\nSummary: A ubiquitous or general purpuse GA\nHome-page: https://github.com/danielwilczak101/EasyGA\n...\nLocation: /usr/local/lib/python3.8/site-packages\n...\nRun Code Online (Sandbox Code Playgroud)\n..显示它安装在/usr/local/lib/python3.8/site-packages中。但当你去那里时:
\n$ cd /usr/local/lib/python3.8/site-packages\n$ ls -l\ntotal 60736\n-rwxr-xr-x 1 gino admin 19681392 Sep 5 10:42 3220aef3144e83d3e26a__mypyc.cpython-38-darwin.so\ndrwxr-xr-x 8 gino admin 256 Sep 26 19:20 EasyGA-0.0.8.dist-info\n-rw-r--r-- 1 gino admin 1800 Sep 26 19:20 EasyGA.py\n...\nRun Code Online (Sandbox Code Playgroud)\n..这里似乎没有“文件结构”。那里安装的文件只是为了在您的应用程序或脚本中使用或导入,而不是为了开发或测试。它通常是包的“发布版本”。因此,询问在哪里pip安装东西,因为你想“在这个文件结构中运行 pytest 文件”没有多大意义(至少对我来说)。
如果您想对包运行测试,最好的方法是获取包的“原始”源代码的副本。由于它托管在 Github 上,因此您需要git从存储库 URL克隆源代码或将其下载为 ZIP:
如果作者提供了源代码下载,您还可以在 PyPi 中检查包的文件。对于 EasyGA,它的形式为EasyGA-0.0.8.tar.gz。
\n无论您选择哪种方式获取源代码,您最终都会得到一个EasyGA文件夹(如果您git clone-d)或EasyGA-master文件夹(如果您将其下载为 .zip 然后解压)或EasyGA-0.0 .8文件夹(如果您从 PyPi 下载了 .tar.gz 然后将其解压)。内容都是相同的,包的“原始”源代码:
$ ls\nEasyGA \nEasyGA-0.0.8\nEasyGA-0.0.8.tar.gz\nEasyGA-master \nEasyGA-master.zip\n\n$ ls EasyGA\nLICENSE.txt MANIFEST.in README.md setup.py src\n\n$ ls EasyGA-0.0.8\nMANIFEST.in PKG-INFO README.md setup.cfg setup.py src\n\n$ ls EasyGA-master\nLICENSE.txt MANIFEST.in README.md setup.py src\nRun Code Online (Sandbox Code Playgroud)\n现在请注意,内容与您引用的Github 页面上的内容相同。然后只需按照作者的测试工作原理说明进行操作即可:
\n$ cd EasyGA\n$ ls\nLICENSE.txt MANIFEST.in README.md setup.py src\n\n$ python3 -m pip install pytest\nCollecting pytest\n Downloading pytest-6.0.2-py3-none-any.whl (270 kB)\n |\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88| 270 kB 2.6 MB/s \n...\nSuccessfully installed attrs-20.2.0 iniconfig-1.0.1 more-itertools-8.5.0 packaging-20.4 pluggy-0.13.1 py-1.9.0 pyparsing-2.4.7 pytest-6.0.2 toml-0.10.1\n\n$ pytest\n================================================================== test session starts ===================================================================\nplatform darwin -- Python 3.8.5, pytest-6.0.2, py-1.9.0, pluggy-0.13.1\nrootdir: /path/to/EasyGA\ncollected 1 item \n\nsrc/initialization/gene_structure/test_gene.py . [100%]\n\n=================================================================== 1 passed in 0.03s ====================================================================\nRun Code Online (Sandbox Code Playgroud)\n
| 归档时间: |
|
| 查看次数: |
21709 次 |
| 最近记录: |