windows多个版本的python如何切换版本

作者:

在

方法一:

打开 PowerShell,输入以下命令打开配置文件(如果文件不存在会自动创建):

notepad $PROFILE

注:如果提示系统找不到指定路径 运行一下就好了
New-Item -Path $PROFILE -ItemType File -Force

在打开的记事本中添加以下代码:

Set-Alias python3.11 "C:\Program Files\Python311\python.exe"
Set-Alias python3.9 "C:\Program Files\Python39\python.exe"
Set-Alias pip3.11 "C:\Program Files\Python311\Scripts\pip3.11.exe"
Set-Alias pip3.9 "C:\Program Files\Python39\Scripts\pip3.9.exe"

方法二:python自带的 官方的启动器 py.exe(位于 C:\Windows\py.exe)

# 运行脚本
py -3.11 script.py
py -3.9 script.py

#安装包
py -3.11 -m pip install <包名>
py -3.9 -m pip install <包名>

更新pip包

python3.11 -m pip install –upgrade pip

python3.9 -m pip install –upgrade pip

PS初始化powershell 设置

或者直接新建 C:\Users\Administrator\Documents\PowerShell\Microsoft.PowerShell_profile.ps1

C:\Users\Administrator\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1

notepad $PROFILE

输入一下内容保存

# 设置 UTF-8 控制台
chcp 65001 > $null
[Console]::InputEncoding = [System.Text.Encoding]::UTF8
[Console]::OutputEncoding = [System.Text.Encoding]::UTF8
$OutputEncoding = [System.Text.Encoding]::UTF8

# 文件默认 UTF-8
$PSDefaultParameterValues['Out-File:Encoding'] = 'utf8'
$PSDefaultParameterValues['Set-Content:Encoding'] = 'utf8'
$PSDefaultParameterValues['Add-Content:Encoding'] = 'utf8'
$PSDefaultParameterValues['*:Encoding']='utf8'

$Host.UI.RawUI.WindowTitle = "PowerShell"
Write-Host ""
Write-Host "PowerShell $($PSVersionTable.PSVersion)" -ForegroundColor Green
Write-Host "CodePage : $(chcp.com | Select-Object -First 1)" -ForegroundColor Cyan
Write-Host "InputEncoding  : $([Console]::InputEncoding.WebName)" -ForegroundColor Yellow
Write-Host "OutputEncoding : $([Console]::OutputEncoding.WebName)" -ForegroundColor Yellow
Write-Host ""
Set-Alias python3.11 "C:\Program Files\Python311\python.exe"
Set-Alias python3.9 "C:\Program Files\Python39\python.exe"
Set-Alias pip3.11 "C:\Program Files\Python311\Scripts\pip3.11.exe"
Set-Alias pip3.9 "C:\Program Files\Python39\Scripts\pip3.9.exe"
function prompt {
    $time = Get-Date -Format "MM-dd HH:mm:ss"
    Write-Host "[$time]" -ForegroundColor Cyan -NoNewline
    " PS $($executionContext.SessionState.Path.CurrentLocation)> "
}

Python设置国内源

pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
pip config set global.trusted-host pypi.tuna.tsinghua.edu.cn

https://mirrors.aliyun.com/pypi/simple/

创建python 虚拟环境 并为提示符设置颜色

python3.11 -m venv venv

找到 ./venv/bin/activate


if [ -z "${VIRTUAL_ENV_DISABLE_PROMPT:-}" ] ; then
    _OLD_VIRTUAL_PS1="${PS1:-}"
    PS1='(venv) '"${PS1:-}"
    export PS1
    VIRTUAL_ENV_PROMPT='(venv) '
    export VIRTUAL_ENV_PROMPT
fi

修改提示符  venv 为绿色 更为显眼

PS1='\[\033[1;32m\](venv)\[\033[0m\] '"${PS1:-}"

退出虚拟环境
deactivate

推荐使用命令一键替换   PS1='(venv)   找到这一行直接替换

sed -i -E 's|^([[:space:]]*)PS1='\''(\([^)]*\)) '\''"\$\{PS1:-\}"|\1PS1='\''\\[\\033[1;32m\\]\2\\[\\033[0m\\] '\''"${PS1:-}"|' ./venv/bin/activate