久久精品精选,精品九九视频,www久久只有这里有精品,亚洲熟女乱色综合一区
    分享

    為什么你的python版本一團糟?因為少了這個操作

     首家i55ryzehof 2018-09-05

    坑人的版本

    Python 的版本問題一直是個廣被吐槽的黑點。以至于有人調侃說:

    Python 是世界上最好的兩種語言!

    在這里我要說明下,對于初學者來說,版本間的語法差異其實并不大?,F在剛開始學 Python 的人,放心大膽地用最新版本即可。業內所詬病的,主要是針對代碼上的不兼容。

    但平心而論,版本間的兼容問題并不是 Python 所獨有。且就算 Python 只有一個版本,第三方庫的版本一樣會讓人抓狂。

    比如說,你之前在電腦上用 Python 寫了一個網站,使用了 django 框架,版本是 1.11。過了一年,你要開發一個新網站,這時候 django 已經發展到了 2.0 版本,你是用還是不用?更新了版本,電腦上的老網站代碼就無法執行了。

    或者,你安裝并使用了某個模塊 A 的最新版本。然后另一個項目用到的模塊 B,B 的代碼卻依賴于模塊 A 較早的版本。這種情況下,你甚至可能都無法成功安裝模塊 B。

    這些版本的沖突在開發中十分常見,而 Python 2 和 3 的版本差異又加劇了這一問題。

    對此,早已有了成熟的解決方案:

    虛擬環境

    Python 開發中所謂的虛擬環境,就是為 Python 版本及第三方庫創建獨立的開發環境,使不同項目之間互不干擾。借助于虛擬環境,我們可以在同一臺電腦上構建出項目 A 在基于 Python 2 的環境中運行,而項目 B 可以在基于 Python 3 的環境中運行。

    虛擬環境需要通過一些工具創建,常見的幾種:

    1,virtualenv。這是 Python 最為常用的虛擬環境工具,簡單有效,我自己就用它。本文稍后部分會介紹下基本的安裝和使用。網上也有相當多的使用教程。

    virtualenv 的一個局限是無法統一管理你電腦上的所有虛擬環境,因此環境多了之后,可能會遺漏,或造成冗余。對此,有一個擴展工具virtualenvwrapper,能幫你統一管理各個環境。

    2,venv。它的實現很大程度基于 virtualenv,使用方法也很類似。而 Python 現已內置了 venv。

    3,conda。這個工具相當于pip + virtualenv + virtualenvwrapper,它不僅能創建和管理虛擬環境,本身還是一個包管理器,可以下載安裝第三方庫。功能完善,使用也不復雜。著名的數據分析開發包anaconda里就默認使用 conda 作為環境和模塊管理工具。

    接下來我們簡要介紹下:

    virtualenv 的使用

    安裝

    在系統命令行通過 pip 或者 easy_install 安裝即可:

    如果你的命令行無法執行 python、pip 及后續的 virtualenv 命令,請檢查你環境變量里的PATH路徑。(還不熟悉的請在公眾號回復關鍵字安裝

    創建

    進入到合適的目錄下(一般是項目根目錄,但不建議加入 git 倉庫里提交),通過 命令創建一個名為 的環境(這個名字可自定義):

    沒有報錯的話,會成功創建目錄 MY_ENV,其中有一些目錄和文件,這就是我們的虛擬環境所在了。

    激活

    使用虛擬環境前,需要“激活”環境:

    windows

    linux

    路徑根據你所在位置會有所不同,也可以使用完整路徑。

    激活環境之后,命令行前面會用括號標識出你所在的環境。這時候再通過 pip 安裝第三方模塊,就不會影響到系統本身的 Python 環境。

    關閉

    當不需要環境時,可以通過 命令關閉。當然,直接關掉命令行窗口也沒毛病。

    指定 Python

    虛擬環境的創建,默認是使用 virtualenv 所在的那個 Python 版本。如果你電腦上有多個 Python,則可以指定環境的 Python 版本,例如:

    虛擬環境的本質

    為什么簡單幾行命令,就可以實現 Python 環境的分離?本質上靠的還是環境變量里的 PATH 路徑。

    PATH 的作用,就是當你執行一個命令時,系統要知道去哪里找這個命令。PATH 里有多個路徑,就按順序從前到后依次查找。執行 python、pip 等命令時,都是按照這個方式進行。

    通過 命令可以查看路徑:

    windows

    linux

    當版本出現混亂時,往往就是 PATH 中有多個路徑,不同路徑中有含有相同的命令,以至于執行了并非你預期的那個版本中的命令。比如你的 python 命令是在 python27 目錄下,而 pip 執行的卻是 python36/Scripts 里的,然后就發生了“明明安裝成功了,程序里卻找不到”的情況。

    而當激活一個虛擬環境時,就相當于在 PATH 的開頭增加了我們創建的目錄,使用這個目錄里的 Python 及相關庫。安裝新的庫也是裝在新建的這個目錄之下。從而避免與其他版本發生干擾。

    如果你不清楚你所用的命令究竟是哪里的,可以在命令行中使用 命令查看:

    PyCharm 里的虛擬環境

    可能很多同學還不習慣用命令行,而是完全使用 IDE 來進行配置。那么最后我特別提一下 PyCharm 的情況。

    新版本的 PyCharm 默認會在創建項目時新建一個虛擬環境,因此不了解這個操作的同學會疑惑,命令行里用 pip 裝好的模塊為什么到 PyCharm 里就用不了了。簡單的解決方法,就是從 PyCharm 的設置面板里安裝庫。

    其他的可選方案:

    建項目時不要選新建虛擬環境

    建項目時選虛擬環境繼承已有的庫

    建項目時選用命令行創建好的虛擬環境

    建好項目后,在命令行激活對應虛擬環境后再安裝庫

    這些我在之前的文章[新手向視頻]新版PyCharm創建項目為什么會有問題里也提過,查看 PyCharm 的上手教程,可在公眾號(Crossin的編程教室)回復關鍵字pycharm

    以上就是關于虛擬環境的一些介紹,留個小作業:親自動手創建一個虛擬環境,并在其中安裝一個第三方庫。

      本站是提供個人知識管理的網絡存儲空間,所有內容均由用戶發布,不代表本站觀點。請注意甄別內容中的聯系方式、誘導購買等信息,謹防詐騙。如發現有害或侵權內容,請點擊一鍵舉報。
      轉藏 分享 獻花(0

      0條評論

      發表

      請遵守用戶 評論公約

      類似文章 更多

      主站蜘蛛池模板: 日本一区不卡高清更新二区| 亚洲色婷婷综合开心网| 在线 | 18精品免费1区2| 国产中文字幕精品喷潮| 日日噜噜夜夜狠狠视频| 国产在线精品无码二区二区 | 9色国产深夜内射| 精品久久久久成人码免费动漫| 亚州中文字幕一区二区| 中文人妻AV大区中文不卡| 亚洲更新最快无码视频| 在线观看成人永久免费网站| 中文丝袜人妻一区二区| 综合激情亚洲丁香社区| 人人妻人人狠人人爽天天综合网| 欧美黑人又粗又大又硬免费视频| 国产高清自产拍av在线| 乱人伦无码中文视频在线| 我国产码在线观看av哈哈哈网站 | 国产初高中生视频在线观看| 狠狠做五月深爱婷婷伊人| 久久精品国产99久久久古代| 伊人久久大香线蕉成人| 国产精品中文字幕观看| 国产亚洲一区二区在线观看 | 午夜精品一区二区三区在线观看| 暖暖日本手机免费观看中文| 欧美丰满熟妇BBB久久久| 中文字幕亚洲无线码A| 久久精品国产中文字幕| 亚洲国产精品久久久久久久| 中国熟妇毛多多裸交视频| 国产综合色在线精品| 久久久这里只有精品10| 免费无码成人AV片在线 | 免费人成网站免费看视频| 久久久久亚洲AV成人网人人网站| 激情五月开心综合亚洲| 国产中文字幕日韩精品| 亚洲高清国产拍精品青青草原| 亚洲人成人无码网WWW电影首页|