Py Launcher——多版本python共存推荐使用方式
bigegpt 2024-10-12 06:00 14 浏览
现在是AI盛行的时代,python语言作为AI第一语言,成为时代的宠儿。AI行业发展迅速,不断推陈出新,不同应用对python环境的要求也变化很快,为运行不同程序,需要不同环境。同一台计算机上共存多个版本python,管理维护让人头大。
本文将介绍用Py Launcher来运行python程序,能在不同版本的环境间切换自如。不同于网上打补丁的维护方式,Py Launcher是目前官方推荐的方式。
实验目的,同机器用不同版本的python,建立各自版本的虚拟环境,便于不同程序的依赖使用。
安装python
安装python的选项,就有Py Launcher的选择,另外选择为所有用户安装,将
在C:\Windows中添加py.exe文件。在此目录中可以建立py.ini文件,内容为(举例):
[defaults]
python=3.10
则此机器默认的python版本为3.10。
另外,安装python时,不建议添加到PATH路径。以后全由py laucher维护。
py launcher 命令介绍
py -h 可以显示帮助信息
py [launcher-args] [python-args] [script [script-args]]
比较有用的命令参数:
py --list 显示所有安装的python列表
py --list-paths 列出python各自的路径
py -版本号 python参数 python脚本 脚本参数 【参数比较复杂,看下面实例容易理解】
下面就演示用py分别建立python 3.9、python 3.10版本的虚拟环境。
多版本虚拟环境建立
本实验将在E:\test目录中建立两个python虚拟环境:v39 、v310。
实验程序E:\test\hello.py,演示用py调用不同虚拟环境。
import sys
print(sys.version)
建立后的v39、v310目录,就是两个python版本的虚拟环境。下面通过hello.py脚本,来说明py建立的环境与对应的python版本对应。命令行下,进入test目录,运行命令:
v310\Scripts\activate,激活v310虚拟环境。
运行脚本: py hello.py
同样激活v39环境,运行:py hello.py
这就意味着py launcher建立的是对应指定版本的环境。以后再运行python脚本,首推:
py xx.py 方式,而不是传统的 python xx.py。在不同版本间,不会像网上介绍的改文件名,打补丁方式。
关于虚拟环境的一点备忘
虚拟环境,可以看做是在计算机python(Base)上,建立的一个隔离安全区。在激活此虚拟环境后,操作被限定在当前虚拟运行环境中。
建立的虚拟环境,内部结构都是一样的,其中有一个pyvenv.cfg文件,记录了一些环境配置信息。
home = C:\python\python3106 【本虚拟环境的基础python】
include-system-site-packages = false 【是否可以使用虚拟环境外,基础python中安装的包。
此方式破坏了虚拟系统隔离性。】
version = 3.10.6
建立虚拟环境的语法为:py -m venv [参数] 虚拟环境目录名
这里把参数说明一下:
-h 帮助
--system-site-packages 把配置文件中的对应项设置为 true
--clear 清空虚拟目录中内容,重新初始到新环境
--upgrade 如果虚拟环境对应的python版本升级了,可用此升级环境中python版本
--upgrade-deps 更新环境中核心,如pip /setuptools到最新版
--symlinks --copies 这两个选项,选择一种。创建虚拟环境时,采取文件符号链接,
还是拷贝文件方式。windows下默认是拷贝方式。
相关推荐
- Linux 命令 ncftp(文件传输)——想玩转linux就请一直看下去
-
我是IT悟道,点击右上方“关注”,每天分享IT、科技、数码方面的干货。Linuxncftp命令Linux命令大全Linuxncftp命令用于传输文件。FTP让用户得以下载存放于服务器主机的文件,...
- 玩转 Linux 之:磁盘分区、挂载知多少?
-
今天来聊聊linux下磁盘分区、挂载的问题,篇幅所限,不会聊的太底层,纯当科普!!1、Linux分区简介1.1主分区vs扩展分区硬盘分区表中最多能存储四个分区,但我们实际使用时一般只分为两...
- 一文带你了解 Linux 文件权限,从基础到高级
-
在Linux中,每个文件和目录都关联了一组权限,定义了不同用户对其的访问能力。权限分为三类:读取(read,r)、写入(write,w)和执行(execute,x),分别用字母r、w、x...
- Linux 使用 socat 让云服务器作为跳板机的方法
-
概念三台机器:客户端A(192.168.1.11)服务器B(192.168.1.88)跳板机C(192.168.1.32)实现A与B的双向数据传输,本该这样:A<...
- Linux启动流程之ROM-CODE(linux启动详解)
-
1.从哪里开始?下图是AM335X核心板和功能框图:AM335X核心板的存储信息如下:AM335X核心板运行linux系统,在这里提出一个问题:上电后指令从哪里开始执行?DDRorEMMC?2....
- 「Linux」——select和epoll详解(linux epoll详解)
-
select和epoll详解select和epoll的区别(面试常考)select一、什么是select1.select函数原型2.参数解释3.参数timeout取值4.返回值5.监控原理二、sele...
- Linux中使用输入输出和错误重定向, 赶紧收藏!
-
Linux中的每个进程都提供三个打开的文件(通常称为文件描述符),分别是标准的输入、输出和错误文件。StandardInput是键盘,抽象为文件,使编写脚本和程序更容易。StandardOut...
- 「正点原子Linux连载」第七十一章Linux 4G通信实验
-
1)实验平台:正点原子Linux开发板2)摘自《正点原子I.MX6U嵌入式Linux驱动开发指南》关注官方微信号公众号,获取更多资料:正点原子第七十一章Linux4G通信实验前面我们学习了如何在Li...
- LSM Oops 内存错误根因分析与解决
-
作者简介:吴文涵,图形算法出身,同时热爱linux内核开发的工程师,喜欢推导并乐于分享。版权声明:本文最先发表于“泰晓科技”微信公众号,欢迎转载,转载时请在文章的开头保留本声明。Oops是...
- 连你家电器的算力都不放过,新发现Linux恶意软件用IoT设备挖矿
-
萧箫发自凹非寺量子位|公众号QbitAI继电脑和手机后,挖矿病毒也盯上了IoT设备。无论是智能冰箱、彩电还是洗衣机,但凡有点算力的(物联网和端侧)设备都可能被这种病毒感染,用于挖掘加密货币等...
- 苹果iOS 26锁屏大升级:更个性更沉浸 有五大亮点
-
【CNMO科技消息】CNMO注意到,苹果近日在iOS26开发者预览版中推出了多项锁屏界面创新功能,可以大幅提升用户个性化设置与操作便捷性。这些更新不仅优化了视觉体验,还通过技术手段增强了交互效率,为...
- 福彩 3D 第 2025178 期:心水407 !大小奇偶双平衡 + 跨度适配,速收藏
-
福彩3D第2025178期:497后和值回落!五维分析+形态调整策略福彩3D2025177期开奖号码497,组六形态,大小比2:1,奇偶比1:2,和值20,跨度5。面对大...
- 一加 Ace5 至尊版手机首发适配和平精英手游
-
7月8日消息,据用户反馈,一加Ace5至尊版手机开启新版本系统推送,升级包大小约6.83MB、版本号为15.0.2.215(CN01),适配了腾讯《和平精英》手游144Hz高刷。IT...
- 外媒称苹果今年秋季将推出超15款新品 远不止iPhone 17
-
【CNMO科技消息】2025年已过半程,有外媒指出苹果计划在今年秋季推出超过15款新产品,涵盖iPhone革新、M5芯片设备迭代、可穿戴设备升级及智能家居布局等。苹果1.iPhone17系列:产品...
- 一周热门
- 最近发表
- 标签列表
-
- mybatiscollection (79)
- mqtt服务器 (88)
- keyerror (78)
- c#map (65)
- xftp6 (83)
- bt搜索 (75)
- c#var (76)
- xcode-select (66)
- mysql授权 (74)
- 下载测试 (70)
- linuxlink (65)
- pythonwget (67)
- androidinclude (65)
- libcrypto.so (74)
- linux安装minio (74)
- ubuntuunzip (67)
- vscode使用技巧 (83)
- secure-file-priv (67)
- vue阻止冒泡 (67)
- jquery跨域 (68)
- php写入文件 (73)
- kafkatools (66)
- mysql导出数据库 (66)
- jquery鼠标移入移出 (71)
- 取小数点后两位的函数 (73)