2016-01-29 57 views
0

我在追蹤我的pip模塊的位置時遇到了一些麻煩,當我在兩個單獨的cmd窗口中執行「pip list」命令時,我終於找到了問題的根源。以管理員身份運行cmd時不同版本的python,如何更改管理員版本?

一個窗口以管理員身份運行,另一個窗口不以管理員身份運行。他們展示了兩個完全不同的模塊列表。當我在每個窗口中運行「python」時,一個啓動了python 3.4.3,另一個啓動了python 3.5.0a2

的原因,我在兩個不同類型的窗口這樣做是因爲我想用PIP安裝模塊,當運行到「訪問被拒絕」的錯誤。 (例如,requests。)

當我檢查我的PATH變量時,它指向C:\Program Files\Python 3.5是否有一個管理員PATH變量,我可以修改,以便我可以運行python3.5作爲管理員

有人可以幫助我明白,我怎麼能找到解決access is denied不使用管理員CMD,或者我如何改變管理路徑變量,還是什麼?

我運行Windows 7,64位,裝有蟒蛇的幾個版本。 2.7,3.3,3.4.3,3.5.0a2。如果需要,我可以獲得更多細化的細節。

編輯添加:我想使用virtualenv與python3.5,但是當我嘗試安裝它與pip install virtualenv,我得到Permission denied錯誤。

+0

嘗試使用Google搜索virtualenv - 這很可能是解決此問題的正確方法。不僅您將爲每個Python版本分離Python環境,您可能爲每個正在開發的項目分離出Python環境。 –

+1

Windows將用戶的PATH連接到系統PATH。看起來你使用的是標準用戶,所以當你升級爲管理員時,它就像一個完全不同的用戶。這在個人Windows系統上並不典型。通過UAC,您通常是受限制的管理員,並且啓動升級過程將使用您的無限制令牌。 – eryksun

+2

你可以簡單地使用'py -3.5 -m pip'。但請先更新至3.5.1。 3.5.0a2是第二個alpha版本,僅用於測試。 – eryksun

回答

1

雖然你是在Windows計算機上運行的Python - 我假設一個客戶端,即桌面。你應該去看看虛擬的Python環境 - 有很多資源記錄,這是如何實現的?

您在直接操縱系統Python環境的副本和1個錯誤會搞砸整個地段向上。對於共享虛擬環境的項目/項目來說更好(更安全) - 然後您可以使用pip要求進行升級。

+0

謝謝你的建議。我試圖安裝virtualenv來使用python3.5,並且我一直在獲取'access is denied'錯誤。 – r12

+1

好的 - 這是「雞和蛋」......因爲你仍然試圖添加一個新的模塊到Python的「管理」副本。但有一個解決方案 - 你需要下載Python的**源**(比如說3。5) - 然後編譯並安裝它**本地**,即您擁有自己的Python版本 - 此時您可以將每個庫安裝到您想要的Python版本中。 –

0

我不能在任何地方本找到一個解決辦法,所以我剛剛刪除的Python的每一絲從我的電腦並安裝蟒蛇。

我不覺得這是一個非常明智的或最佳的解決方案,但我現在已經在各個地方的一致行爲。另外,Anaconda安裝程序似乎比pip安裝程序更加流暢。

+2

您是否嘗試在提升的命令提示符下使用'py -3.5 -m pip install ...'? 3.5的新安裝程序允許您將py啓動程序安裝到系統中,即使僅爲當前用戶安裝Python,也應該將py.exe放在Windows目錄中,並且無需任何「PATH」修改即可使用。自從我使用py.exe和虛擬環境以來,我從不碰「PATH」。如果您只使用Python 3,請使用標準庫的venv模塊而不是virtualenv。它是通過設計集成的,而virtualenv是一種破解(有用,但破解都是一樣的)。 – eryksun

+0

昨晚我確實嘗試過,但我不記得這個問題。在某個時候,python2.7的一個老版本開始出現,那時候我扔了毛巾。 – r12

相關問題