成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

如何在Python中創建和使用虛擬環境

云計算 虛擬化
Python中的虛擬環境是一個很有用的功能,可以建立多個互不干擾的空間,每個空間中安裝的包都是相互獨立的。

[[431838]]

前兩天收到公司郵件,說在我的電腦上發現了anaconda的進程,商業軟件需要付費,為了軟件合規,讓我卸載掉。我就借這個機會寫個簡單的教程。

Anaconda是一個Python的發行版 ,主要集中在科學計算的用途上,主要有三點優勢:

  • 打包了很多科學計算的常用庫,比如numpy
  • 開發了conda這個環境管理工具,可以很方便地創建虛擬環境,管理多個Python版本,同時安裝conda維護的庫
  • 維護了很多科學計算相關的庫,而且都是編譯好的二進制庫,相比于pip的庫,有時候更加方便,比如conda會幫你把很多c語言的庫編譯好直接裝,很省事

我上網搜了一下,Anaconda確實變更了他們的授權政策,之前個人版可以用作商業用途,現在不行了。大規模商業公司的用戶必須得繳費,小規模的商業用途仍然可以使用個人版(200人以下)。

我估摸著這個公司其實查的也沒有那么嚴,屬于睜一只眼閉一只眼,甚至是睜一只眼閉九只眼的狀態,但是公司為了完全合規還是讓我們卸載掉了這個軟件。

(話說為什么不能出錢給我們買?)

其實Anaconda倒不是因為軟件收費,他收費的主要對象是conda包的在線服務,也就是你從他們的服務器上下載庫的話收費,單單使用conda這個軟件并不收費。

然而,我用conda的場景偏偏就需要從他們的服務器上下載包,因為我主要就是管理多個python版本,這個是需要下載二進制文件的。

所以,雖然但是,我還是在不舍中卸載了,然后開始尋找替代方案。

結論是:

  • 如果只需要使用一個版本的Python,但是需要多個虛擬環境,用venv
  • 如果需要用到多個版本的Python和虛擬環境,并且可以方便來回切換,用pyenv

Python中的虛擬環境是一個很有用的功能,可以建立多個互不干擾的空間,每個空間中安裝的包都是相互獨立的。之所以有這個需求,是因為不同的軟件依賴的包的版本是不一樣的。

比如,你有一套源代碼依賴TensorFlow 1.0和python3.5,然后你又下載了別人的源代碼,依賴TensorFlow 2.0和python3.6,如果沒有虛擬環境就很麻煩,因為Python不能安裝不同版本的庫到同一個環境中。但是你可以創建兩個不同的Python環境,這個時候就能完美運行兩套代碼,互不干涉了。

下面稍微寫一下conda pyenv venv的基本使用教程。

conda

用conda創建虛擬環境的命令如下

conda create -n new_env python=3.8 numpy

其中-n new_env的意思是指定新環境的名字,這里叫new_env,python=3.8是指定python的版本,numpy是指創建環境的時候你想安裝的包,可以寫不止一個,也可以不寫,等到創建完成了再安裝。

創建完成之后,你可以通過conda activate來激活某個環境

conda activate new_env

conda的環境默認都是安裝在anaconda的根目錄下面,比如我的anaconda安裝在/home/user/anaconda下,那么剛剛的環境就在home/user/anaconda/envs/new_env中

conda的優勢在于,可以選擇python版本,而且不管是不同版本的Python解釋器,還是對應的包,他提供都是編譯好的二進制文件,下載下來就可以直接用,不用自己編譯。用pyenv也能管理多個版本,但是需要自己編譯,雖然自己編譯更自由,但是也需要更多技巧。

conda的缺點是,依賴計算很慢,所以安裝會更久,而且網絡對國內用戶不太友好。

venv

venv的用法很簡單

python3 -m venv my-env

這樣就創建完成了一個新虛擬環境,叫my-env,跟conda不同的是,這個my-env是放在你運行這條命令的目錄下面。

創建完成之后,還需要激活,運行下面的命令激活

source my-env/bin/activate

venv的局限性在于,只能用當前的Python版本

pyenv

pyenv可以用來管理多個python環境,用起來比conda稍微復雜一點點。

麻煩在哪呢?它需要下載Python的源代碼自己編譯,而conda都是下載好的二進制,可以直接用。我用pyenv安裝python3.6的時候就遇到了編譯錯誤,然后設置了build flag才解決。

安裝某個版本:pyenv install 3.6.15

設置默認版本:pyenv global 3.6.15

裝完之后就能再配合venv創建虛擬環境了。

pyenv其實自帶了一個virtualenv命令,類似于conda,可以在創建虛擬環境的時候指定版本,比如

pyenv virtualenv 3.6.15 new_env

但是需要你先安裝對應版本的python。

 

以上基本上就涵蓋了Python創建和使用虛擬環境的幾種方法。

 

責任編輯:武曉燕 來源: HexUp
相關推薦

2021-09-18 08:00:00

Python系統開發

2023-06-01 15:37:11

PyCharm工具開發

2021-11-15 05:44:16

Python虛擬環境開發

2019-07-11 16:20:22

MacOSPython

2020-07-06 07:00:21

PyCharm虛擬環境

2021-03-04 20:46:32

virtualenvwPython虛擬環境

2012-11-30 16:02:57

在vSphereiSCSI存儲虛擬化

2021-03-01 08:00:00

Linux開發虛擬環境

2016-04-12 10:12:53

2021-02-18 17:00:52

Linux歸檔文件

2021-07-30 20:25:04

pipxPython編程語言

2023-05-05 16:37:13

CPU 性能虛擬環境虛擬化

2019-09-16 11:40:49

Linux交換文件

2019-07-02 06:31:27

Python虛擬環境代碼

2018-04-26 09:30:54

LinuxLVM交換分區

2022-09-08 10:40:16

Linux Mint工作區程序

2017-01-06 09:57:08

AppSenseLANDesk桌面

2021-08-13 08:42:48

Python 編程技巧poetry

2009-12-29 10:50:47

2009-02-02 15:07:54

服務器虛擬化VMware
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产日韩精品视频 | 中文字幕一区二区三区精彩视频 | 日韩在线播放一区 | 国产午夜精品一区二区三区嫩草 | 成人1区2区 | 日韩精彩视频 | 精品久久久久久一区二区 | 99精品网站 | 欧美日韩专区 | 欧美久久一区二区 | 国产精品久久久久久久久久久久午夜片 | 伊人春色在线观看 | 中文字幕人成乱码在线观看 | 激情视频中文字幕 | 免费一级黄 | 国产成人精品一区二区三区四区 | 中文字幕av网 | 日韩欧美在 | 噜噜噜噜狠狠狠7777视频 | 99热国产精品| 欧美 日韩 国产 一区 | 6996成人影院网在线播放 | 欧美综合国产精品久久丁香 | 欧美一级特黄aaa大片在线观看 | aⅴ色国产 欧美 | 欧美日韩国产中文字幕 | 欧美日韩在线一区二区三区 | 99re国产精品 | 丁香婷婷综合激情五月色 | 久久综合狠狠综合久久 | 视频一区二区在线观看 | 欧美中文字幕一区二区三区亚洲 | 色毛片 | 欧美成人高清视频 | 欧美激情国产精品 | 亚州精品天堂中文字幕 | 亚洲一区二区免费 | 亚洲视频 欧美视频 | 亚洲精品在线视频 | 一久久久 | 亚洲精品久久久久久久久久久 |