临时Python环境的制作方法

  • 开头
  • 开始
  • 进阶(使用文本编辑器)
  • 后记


开头

#!/env notepad
 # -*- coding: utf-8 -*-
 ‘’’
 @Author : qq_39124701
 @File      : 临时Python环境的制作方法.txt
 @Link     : 
 @Time    : 周二 2021/04/27
 ‘’’


最终目录树
└───python3.9.4-E
        ├───emed64_20.6.1_portable
        ├───python-3.9.4-embed-amd64
        ├───pythonscript
        ├───Sublime Text Build 3211 x64
        ├───run.bat
        ├───run.ps1
        ├───run2.bat
        ├───创建临时Python环境的制作方法.txt
        ├───文本编辑器EmEditor.bat
        └───文本编辑器SublimeText.bat

开始

  • 1.访问 https://bootstrap.pypa.io/ 下载 get-pip.py ,将 get-pip.py 放置在 python3.9.4-E\python-3.9.4-embed-amd64\ 文件夹下
  • 2.在 python3.9.4-E\python-3.9.4-embed-amd64\ 路径打开命令窗口,运行命令 python get-pip.py
  • 3.去除python**._pth文件中import site的注释(不懂可以百度搜索"embeddable import site")
  • 4.使用脚本临时修改环境变量,脚本文件放置在 python3.9.4-E 文件夹下
$env:path -creplace (';', "`n")
  • 2.新建run.ps1文件
  • 3.写入以下内容并保存
Write-Host "正在设置环境"
PowerShell -NoExit -Command {`
	<# Python 退出:1.import sys;sys.exit() 2.from sys import exit;exit()3.输入 Ctrl+Z 组合键显示^Z字符,然后再敲一下回车#>
	<# Python 清屏:1.import os;os.system("cls") 2.import os;testxJQ9RHuRu1a0XFOd = os.system("cls")(没有返回值,清的干净)#>
	$MyReg1 = "[^;]*?python[^;]*?((;)|($))";`
	$MyReg2 = "[^;]*AppData\\Local\\Microsoft\\WindowsApps((;)|($))"; <# WindowsApps 路径会导致 python 命令直接打开应用商店#>
	$MyReg3 = "(?<=\\)[^\\]*?\.[^(\\)]*$";`
	
	$GetLocation = Get-Location;`
	$MyEmbeddedPython = Join-Path $GetLocation "python-3.9.4-embed-amd64\python.exe";`
	$MyEmbeddedPythonPath = $MyEmbeddedPython -replace $MyReg3,"";`
	$MyEmbeddedPip = Join-Path $GetLocation "python-3.9.4-embed-amd64\Scripts\pip.exe";`
	$MyEmbeddedPipPath = $MyEmbeddedPip -replace $MyReg3,"";`
	<# & $MyEmbeddedPython#>
	
	<# 临时删除原 Python 的环境变量#>
	$env:Path = $env:Path -replace $MyReg1,"";`
	$env:Path = $env:Path -replace $MyReg2,"";`
	$env:Path = $env:Path + "%USERPROFILE%\AppData\Local\Microsoft\WindowsApps"; <# 重新加回来就修改了顺序#>
	<# 设置 Python 环境变量#>
	$env:Path = $env:Path + ";" + $MyEmbeddedPythonPath + ";" + $MyEmbeddedPipPath + ";";`
	<# Jupyter notebook 中文界面#>
	$env:LANG="zh_CN.UTF8";`
	
	Write-Host "环境设置完毕";`
}
  • 5.使用bat脚本文件临时修改环境变量
  • 1.新建run.bat文件
  • 2.写入以下内容并保存
@echo off
REM Python 退出:1.import sys;sys.exit() 2.from sys import exit;exit()3.输入 Ctrl+Z 组合键显示^Z字符,然后再敲一下回车
REM Python 清屏:1.import os;os.system("cls") 2.import os;testxJQ9RHuRu1a0XFOd = os.system("cls")(没有返回值,清的干净)
REM 临时破坏原 Python 的环境变量
:go
set batfilepath=%~dp0
set temp=%path%
set temp=%path:AppData\Local\Microsoft\WindowsApps=DamagedWindowsAppsqUzfSmscOvXBngIB%
set temp=%temp:\Python=DamagedPythonUl85S5c9bNrFPH3E%
set path=%temp%

set myembeddedpython=%batfilepath%\python-3.9.4-embed-amd64\python.exe
set myembeddedpythonpath=%myembeddedpython:~0,-10%
set myembeddedpip=%batfilepath%\python-3.9.4-embed-amd64\Scripts\pip.exe
set myembeddedpippath=%myembeddedpip:~0,-7%

REM Jupyter notebook 中文界面
set LANG=zh_CN.UTF8
REM 设置 Python 环境变量
set path=%path%;%myembeddedpythonpath%
set path=%path%;%myembeddedpippath%

set /p var=%cd%~
if "%var%"=="exit" goto end
%var%

goto go

:end
  • 6.使用bat脚本文件临时修改环境变量(2)
  • 1.新建run2.bat文件
  • 2.写入以下内容并保存
@echo off
REM Python 退出:1.import sys;sys.exit() 2.from sys import exit;exit()3.输入 Ctrl+Z 组合键显示^Z字符,然后再敲一下回车
REM Python 清屏:1.import os;os.system("cls") 2.import os;testxJQ9RHuRu1a0XFOd = os.system("cls")(没有返回值,清的干净)
REM 临时破坏原 Python 的环境变量

echo 正在设置环境
set batfilepath=%~dp0
set temp=%path%
set temp=%path:AppData\Local\Microsoft\WindowsApps=DamagedWindowsAppsqUzfSmscOvXBngIB%
set temp=%temp:\Python=DamagedPythonUl85S5c9bNrFPH3E%
set path=%temp%

set myembeddedpython=%batfilepath%\python-3.9.4-embed-amd64\python.exe
set myembeddedpythonpath=%myembeddedpython:~0,-10%
set myembeddedpip=%batfilepath%\python-3.9.4-embed-amd64\Scripts\pip.exe
set myembeddedpippath=%myembeddedpip:~0,-7%

REM Jupyter notebook 中文界面
set LANG=zh_CN.UTF8
REM 设置 Python 环境变量
set path=%path%;%myembeddedpythonpath%
set path=%path%;%myembeddedpippath%

echo 环境设置完毕
cmd /k
  • 7.打开脚本愉快的运行 python 命令 (๑•̀ㅂ•́)و✧

进阶(使用文本编辑器)

  • 1.使用 EmEditor 编辑并运行 Python 脚本文件
  • 1.访问找到 64 位便携版下载并解压到 python3.9.4-E 文件夹下(python3.9.4-E\emed64_20.6.1_portable\)
  • 2.打开 python3.9.4-E 文件夹,新建 文本编辑器EmEditor.bat 文件
        写入:cd emed64_20.6.1_portable&start EmEditor.exe
        保存
  • 3.单击打开 文本编辑器EmEditor.bat,窗口上方标签页打开"帮助(H)",选择"降级(D)",在弹窗中选择"降级",在弹窗中选择"立即重启"
  • 4.窗口上方标签页打开"工具(T)",选择"外部工具(E)",选择"自定义工具( C)"
        在外部工具窗口中选择"新建(N)",
        标题(T)输入:运行Python,
        命令©输入:%WinDir%\system32\cmd.exe,
        参数(A)输入:/k “cd…&&cd python-3.9.4-embed-amd64&&python $(Path)”,
        初始目录(I)输入:$(Dir),
        图标路径§输入:%WinDir%\system32\cmd.exe,
        勾选在输出栏中显示(B),
        检查编码(E)是否选择了:系统默认(65001,utf-8) 或 UTF-8,未选择则修改为UTF-8
  • 5.在 python3.9.4-E 文件夹下新建文件夹起名为 pythonscript(如果有文件夹就不用建了),
        在 pythonscript 下新建 notitle_1.py 文件,
        文件拖入到EmEditor窗口,
        编辑文件内容:print(“123”),
        Ctrl+S保存,
        找到上方标签页中的"运行Python"命令提示符图标(在"工具"、“edge浏览器”、“资源管理器”、“命令提示符”、"锤子"图标的最后面),
        (可以向左或向下拖动"工具"字样紧挨着左侧的竖条,使按钮更容易点击)
        点击"运行Python"命令提示符图标,
        成功输出
  • 6.打开 EmEditor 愉快的运行 python 脚本 (๑•̀ㅂ•́)و✧
  • 2.使用 Sublime Text 编辑并运行 Python 脚本文件

  •     找到这一行:Windows 64 bit - also available as a portable version,
        点击 portable version 下载 Sublime Text 压缩包,解压到 python3.9.4-E 文件夹下(python3.9.4-E\Sublime Text Build 3211 x64\)
  • 2.打开 python3.9.4-E 文件夹,新建 文本编辑器SublimeText.bat 文件
        写入:cd Sublime Text Build 3211 x64&start sublime_text.exe
        保存
  • 3.单击打开 文本编辑器SublimeText.bat,
        窗口上方标签页打开"Tools",点击"Install Package Control",
        等待 successfully installed 提示出现,
        点击"确定"
  • 4.窗口上方标签页打开"Preferences",点击"Package Control",
        输入:ip,点击"Package Control: Install Package",
        等待窗口出现,
        输入:ChineseLocalizations,点击"ChineseLocalizations",
        等待 Package Control Messages 文字出现,
        重启软件,点击 x 图标关闭"Package Control Messages"
  • 5.打开 python3.9.4-E\Sublime Text Build 3211 x64\Data\Packages 并新建文件夹,命名为 python-E_bridge,
        打开 python-E_bridge,新建python-E_bridge.bat,写入以下内容并保存
@echo off
cd /d %~dp0
cd..
cd..
cd..
cd..
cd /d python-3.9.4-embed-amd64
python %1
  • 6.窗口上方标签页打开"工具(T)",点击"编译系统(U)",点击"新建编译系统…"
        写入以下内容并按快捷键 Ctrl+S (注意保存目录:python3.9.4-E\Sublime Text Build 3211 x64\Data\Packages\User),
{
    //"这是注释": "http://www.sublimetext.com/docs/3/build_systems.html#basic_example",
    "cmd": ["$packages\\python-E_bridge\\python-E_bridge.bat","$file"],
    "file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
    "selector": "source.python",
}
  • 7.运行方法
        在 python3.9.4-E 文件夹下新建文件夹起名为 pythonscript(如果有文件夹就不用建了),
        在 pythonscript 下新建 notitle_1.py 文件,
        文件拖入到 Sublime Text 窗口,
        编辑文件内容:print(“123”),
        Ctrl+S保存,
        1方法:按Ctrl+Shift+B再点击"运行python"运行脚本
        2方法:窗口上方标签页打开"工具(T)",点击"编译系统(U)",勾选"运行python",打开py脚本文件后按快捷键Ctrl+B运行脚本
        成功输出
  • 8.使用 Sublime Text 打开或编辑 py 脚本,输入快捷键愉快的运行 python 脚本 (๑•̀ㅂ•́)و✧

后记

调用同目录py文件时,使用以下代码

import sys,os
sys.path.append(os.path.dirname(os.path.realpath(__file__)))