Yak*_*an3 5 pip git-bash python-3.5 discord
我一直在尝试配置discord API discord.py以及在我的服务器上运行Red-MusicBot.我已经安装了Python 3.5,并添加了PATH变量(我点击了安装中的"将Python添加到PATH"选项).这是我的路径变量目前的样子:
C:\Users\Corey Rigney\AppData\Local\Programs\Python\Python35\Scripts\
C:\Users\Corey Rigney\AppData\Local\Programs\Python\Python35\
Run Code Online (Sandbox Code Playgroud)
这些是唯一与Python相关的.现在,作为discord.py安装过程的一部分,它希望我在Git Bash中运行此命令:
$ git clone https://github.com/Rapptz/discord.py
$ cd discord.py
$ python3 -m pip install -U .[voice]
Run Code Online (Sandbox Code Playgroud)
前两行完美,但第三行返回:
bash: python3: command not found
Run Code Online (Sandbox Code Playgroud)
我还从GitHub克隆了pip作为一个尝试修复,虽然python安装网站说它包装3.5.
我正在运行Windows 64,64位.
这样做的总体目标是安装一个不和谐的音乐机器人,如果它能帮助我发布尝试运行时遇到的错误.
小智 17
在使用 git bash 的 Windows 中,python3 对我不起作用:
$ python --version
Python 2.7.15
Run Code Online (Sandbox Code Playgroud)
但如果我使用 py
$ py --version
Python 3.8.1
Run Code Online (Sandbox Code Playgroud)
不知道为什么,但它有效
Pra*_*bah 16
在python的installed("c:\\Installationpath\Python3.6.0")路径中你会发现"python.exe",只需在同一个地方复制粘贴并将其重命名为"python3.exe",现在在命令提示符下你可以检查python3命令应该显示你的python安装.
cda*_*rke 12
在Windows上,python可执行文件的正常名称是python.exe(控制台程序)或pythonw.exe(对于GUI程序).
python可执行文件有时python3在某些平台上调用,其中default(python)是旧的python 2.在许多基于UNIX(包括Linux和OS X)的系统上,系统实用程序使用python 2,更改它可能会产生不良后果在这些平台上,因此名称为"python3".
在Windows上你应该没问题 - 在Windows上还有其他问题,除非你尝试使用多个python版本,否则你不会得到它们.
Daw*_*žan 11
复制 Python 3 可执行文件python.exe并将其重命名python3.exe为另一个答案中的建议是一个糟糕的主意,请不要这样做,因为每次将 Python 升级到新版本时都必须重复它,并且很可能您会忘记它你会惊讶地发现你的 Python 在升级后就被破坏了。
我建议进行以下简单设置。
python3.exe只需创建一个python3.exe在PATH环境变量中(但不在Python 3 安装目录下)的目录中命名的符号链接,指向 Python 3 可执行文件python3/python.exe。即使您升级了 Python,符号链接也会保留在那里并继续指向正确的可执行文件(因为它位于 Python 3 安装目录之外,所以即使删除过时的 Python 的整个目录并在其中放置新的 Python,它也不会受到影响) 。
准备起来非常简单:
pwsh.exe)、Powershell ( powershell.exe) 或 Windows 命令 shell ( cmd.exe)PATH(echo $env:PATH在 Powershell 中使用或echo %PATH%incmd.exe来打印变量内容)PATH变量中(见下文)python3.exe指向 Python 3 可执行文件(target参数)的符号链接,两个路径可以是绝对路径或相对路径:
在 Powershell 中,使用New-Item带有-Type SymbolicLink选项的命令:
New-Item -Type SymbolicLink -Path python3.exe -Target c:\<Python3-installation-directory>\python.exe
在 中cmd.exe,使用mklink命令:
mklink python3.exe c:\<Python3-installation-directory>\python.exe
现在,如果您从任何目录执行python3或python3.exe,Windows 将在当前目录中搜索它,然后在PATH环境变量中的所有目录中搜索它。它找到您创建的符号链接,将其“重定向”到 Python 3 可执行文件,然后 Windows 执行它。
python命令?当安装了 Python 2 和 3 时,命令执行的 Python 版本python取决于PATH环境变量中 Python 目录的顺序。
当您执行命令并且在当前工作目录中找不到该命令时,Windows 会迭代变量中的所有目录,PATH同时保持它们在那里列出的顺序,并执行名称与该命令匹配的第一个可执行文件(并且它会停止搜索)。
因此,当您的PATH变量包含顺序为 Python 安装目录时c:\dev\python2\;c:\dev\python3;...,该python命令将python.exe在 中执行c:\dev\python2\,因为它是最先找到的。
该顺序取决于您安装两个 Python 版本的顺序。每个安装都会在 的开头添加(如果您选中该选项)其安装目录PATH,因此当您只执行 时,将执行最近安装的版本python。但当然,您可以手动重新排序。
pip没有问题,因为已经有一个名为的可执行文件位于Python 安装期间pip3.exe自动添加到的目录中( ,因此只需用于Python 3 的 pip 和/用于 Python 2 的 pip 。PATH<installation-root>\Scriptspip3pippip2
不要复制可执行文件,而是添加一个充当python3.
带有#!python3shebang 行的Python 3 脚本将无法运行,因为python3.exe在 Windows 上不存在 - 它可以通过py -3.
要解决此问题,请将此脚本添加python3到您的PATH: 中,它将根据操作系统调用正确的 Python 命令(也适用于 Windows 和 Linux)。
#!/usr/bin/env bash
# Fix problem with `python3` shebang on Windows MSYS Bash
if [[ "$OSTYPE" =~ ^msys ]]; then
py -3 $*
else
python3
fi
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
31147 次 |
| 最近记录: |