如果使用-t选项,PIP如何知道Python是32位还是64位?
您可以使用一个标志(pip安装--Python版本3.6…)指定Python版本,但是您似乎无法指定要安装的模块是32位还是64位。我有一些理论,但在这一点上我不清楚它的行为 更具体地说,我想使用PIP.exe在嵌入式Python区域(没有自己的PIP.exe)中安装一个模块,并使用-t标志指定位置 更新:情况似乎是32位Pip安装在32位Python上,而64位Pip安装在64位Python上 可以使用标志指定Python版本 你不能。选项如果使用-t选项,PIP如何知道Python是32位还是64位?,python,pip,Python,Pip,您可以使用一个标志(pip安装--Python版本3.6…)指定Python版本,但是您似乎无法指定要安装的模块是32位还是64位。我有一些理论,但在这一点上我不清楚它的行为 更具体地说,我想使用PIP.exe在嵌入式Python区域(没有自己的PIP.exe)中安装一个模块,并使用-t标志指定位置 更新:情况似乎是32位Pip安装在32位Python上,而64位Pip安装在64位Python上 可以使用标志指定Python版本 你不能。选项-t用于pip安装设置目标目录,而不是Python版本
-t
用于pip安装
设置目标目录,而不是Python版本
但您似乎无法指定是要安装32位还是64位的模块
pip
是一个Python脚本,它在Python解释器下运行,解释器当然知道它是32位还是64位
更具体地说,我想使用PIP.exe在嵌入式Python区域中安装一个模块
您可以下载不同(当前Python/pip)硬件平台、操作系统和Python版本的软件包,但不能安装它们。要安装软件包,您必须具有兼容的
pip
。因此,第一件事是为所述嵌入式Python安装pip
。如果您正在尝试使用本地pip
从PyPI中提取一个包,并将其转储到类似于CircuitPython设备的文件夹中,您可以尝试以下操作:
pip install \
--no-compile \
--target /your/path \
--python-version=3.5 \
--implementation=py \
--no-binary=:all: \
--no-deps \
adafruit-circuitpython-bmp280
这将把源(模块或包)转储到/your/path
中。--python版本
只使用包中的标记,实际上不检查源代码--implementation=py
将强制它使用纯python包
较旧的答案,但对某些上下文有用 可以使用标志指定Python版本 你能澄清一下吗?你是说运行类似于
python3.5
或python3.8
的东西吗?这是Python二进制文件的名称
您也可能正在使用Windows,在这里可以在shebang行中找到可执行文件。该行由py
处理
为了消除混淆,我们不运行
pip安装…
,而是运行python-m pip安装…
。然后,您可以确定pip
和python
用于相同的安装(版本、虚拟环境等)
例如,如果我安装了Python2.7、Python3.5和Python3.8,我的路径上可能会有以下“明确的”二进制文件
python2
python2.7
python3.5
python3.8
python
python3
pip
pip3
pip
可能安装到(例如)Python 3.5版本,而Python
是Python 2.7。如果是这种情况,如果运行pip安装请求
,那么python-c“导入请求”
将失败
如果您在Windows上,运行
py-3.7-32 myscript.py
将使用32位版本的Python 3.7(如果存在)运行脚本。如果您需要为它安装软件包,请使用py-3.7-32-m pip install…
来确保它是为它安装的,而不是pip install…
,谁知道它会去哪里。您的可执行文件/环境变量中有这两个版本吗?我认为这比你用pip加上的任何论点都重要-t仅仅给出了您想要安装它的目录?您能澄清一下“嵌入式Python区域”是什么吗?你的目标是什么设备?我的目标是一个单独的嵌入式Python区域。它包含并仅由父进程运行。-python版本设置python版本。安装一个32位的模块,需要一个32位的Pip。你试过了吗?尝试安装一些复杂的二进制扩展:numpy、scipy、pandas。尝试使用Python2.7创建一个virtualenv并安装pandas for Python3.7。我没有使用Python2 Pip,但任何Python3 Pip似乎都可以工作,只要目标Python的位宽度相同(32或64)。“兼容”是指相同的位宽吗?Pip似乎有自己的版本号。所谓“兼容”,我指的是相同的平台、相同的操作系统、相同的Python版本。Bitness在这里是最不有趣的。嵌入式Python安装似乎没有脚本目录,因此没有Pip,甚至没有放置它的位置。(也许我有点困惑。)