[英]Python 3.4 and 2.7 installation no Script folder and no pip installed
我今天在Win7 X64
上對Python 2.7.9
和3.4.3
進行了全新安裝,我發現Python27
和Python34
文件夾中沒有Script
文件夾作為第一個子級文件夾,但Tools
有一個。 但是,我在該腳本文件夾中找不到pip
,盡管默認情況下pip
應該與Python
一起安裝。 另一個我正在為我的其他 PC 和筆記本電腦進行相同的安裝,有Script
文件夾(作為Python27
和Python34
第一級子文件夾)包含pip
。 那么發生了什么? 如何以這種方式安裝pip
和其他有用的腳本?
[編輯] 我在Python34
嘗試了python -m ensurepip
Python34
。 我收到以下錯誤:
Ignoring indexes: https://pypi.python.org/simple
Collecting setuptools
Exception:
Traceback (most recent call last):
File "C:\Users\daiyue\AppData\Local\Temp\tmppvmc8dv1\pip-6.0.8-py2.py3-none-
any.whl\pip\basecommand.py", line 232, in main
status = self.run(options, args)
File "C:\Users\daiyue\AppData\Local\Temp\tmppvmc8dv1\pip-6.0.8-py2.py3-none-
any.whl\pip\commands\install.py", line 339, in run
requirement_set.prepare_files(finder)
File "C:\Users\daiyue\AppData\Local\Temp\tmppvmc8dv1\pip-6.0.8-py2.py3-none-
any.whl\pip\req\req_set.py", line 333, in prepare_files
upgrade=self.upgrade,
File "C:\Users\daiyue\AppData\Local\Temp\tmppvmc8dv1\pip-6.0.8-py2.py3-none-
any.whl\pip\index.py", line 326, in find_requirement
file_locations, url_locations = self._sort_locations(locations)
File "C:\Users\daiyue\AppData\Local\Temp\tmppvmc8dv1\pip-6.0.8-py2.py3-none-
any.whl\pip\index.py", line 158, in _sort_locations
sort_path(os.path.join(path, item))
File "C:\Users\daiyue\AppData\Local\Temp\tmppvmc8dv1\pip-6.0.8-py2.py3-none-
any.whl\pip\index.py", line 139, in sort_path
if mimetypes.guess_type(url, strict=False)[0] == 'text/html':
File "C:\Python34\lib\mimetypes.py", line 287, in guess_type
init()
File "C:\Python34\lib\mimetypes.py", line 348, in init
db.read_windows_registry()
File "C:\Python34\lib\mimetypes.py", line 255, in read_windows_registry
with _winreg.OpenKey(hkcr, subkeyname) as subkey:
TypeError: OpenKey() argument 2 must be str without null characters or None, not str
[編輯] 該問題是由於HKEY_LOCAL_MACHINE
中的多個空注冊表項導致mimetypes.py
搜索中的read_windows_registry()
失敗。 這是導致解決方案的帖子:
謝謝
如果您使用 PSF (python.org) .msi Windows 安裝程序,則應在 pythonxy/Lib/site-packages 中為 3.4.0+ 和 2.7.9+ 安裝 pip(和依賴項)。 還應該有包含大約 5 個 .exe 的 pythonxy/Scripts。 這是安裝過程的最后一部分。 命令提示符窗口應該會短暫出現。 也許您在安裝時沒有檢查 [ ] install pip (盡管默認情況下應該檢查)。 也許您錯過了一個錯誤。
在任何情況下,您都應該為 2.7 和 3.4 提供 pythonxy/Lib/ensurepip/* 並且您現在應該能夠運行此模塊。 在命令提示符中,在 .../python27 和 .../python34 中嘗試python -m ensurepip
ensurepip。
此問題是官方錯誤: Issue23604 。
我遇到了同樣的問題,並使用Swarley's Blog 中的方法成功修復了它。
有同樣的問題,重新安裝沒有幫助。
最后通過以管理員身份運行python -m ensurepip
來修復它。
通過安裝 Python 2.7.13 解決
我今天在嘗試在我的計算機中安裝 Python 2.7.13 時遇到了同樣的問題; 經過一番調查,我意識到 v.3.60(“Anaconda”)已經存在(它與我幾周前安裝的 Microsoft Visual Studio 2017 一起提供)。
我懷疑注冊表中存在某些路徑不匹配,因此我嘗試刪除 Python v. 3.60 和 2.17,並通過刪除HKCU\\Software\\Python鍵(由於某種原因仍然存在)來清理注冊表。 在此之后,我能夠正確安裝版本 2.7.13,這次 \\scripts 文件夾存在,其中包含所有預期的內容。
我不知道再次安裝 v. 3.6 是否會導致任何問題:由於我目前正在為 v.2.7 進行開發,因此暫時不會嘗試此操作。
無論如何,希望這可以有所幫助。
Max - 意大利
編輯:我進行了一些進一步的調查,並認為我已經發現了(在我的情況下)\\Scripts 文件夾丟失的原因:我要安裝 Python 的路徑在虛擬驅動器中。
在我的計算機中,我只有一個分區 (C:),並且我將一個文件夾 (C:\\Development) 映射為 D:,然后我嘗試在 D:\\Python27 上安裝 Python; 顯然這不是“好”,並且會導致安裝程序出現一些問題。
發現后,我嘗試安裝到真實路徑,現在似乎一切正常。
最大限度。
Windows 10。我在將 Python 2.7 安裝到 C:/Program Files/Python27 時遇到了這個問題。我認為在這種情況下,這是一個路徑問題。 修復是在 C:/Python27 中進行安裝,將 Scripts 文件夾從該安裝復制到 C:/Program Files/Python27 中的安裝。 其他一切(包括 Python 和腳本的路徑)都很好。
基於這里的內容和我在其他地方找到的內容的組合,這是我修復它的方法:
卸載已經安裝的任何東西。 轉到 regedit 和 HKLM/SOFTWARE/Python 並刪除整個 python 部分。 重新安裝 Python
這次安裝了腳本文件夾。
希望這可以幫助某人。
你猜怎么着? 如果您安裝了NetBeans (或者可能是GlassFish ),那么它可能會破壞pip 的安裝!
詳細信息: NetBeans 安裝程序中存在一個錯誤,有時可能會以其他安裝程序不希望的方式破壞 Windows 注冊表。
@J3soon 的回答很接近,但Swarley 的博客文章並沒有解決我環境中的問題,因為它不是空字符而是另一種注冊表損壞。
這就是我擺脫這個問題的方法。 運行以下 PowerShell 腳本:
$local_key = 'HKCU:\Software\Microsoft\Windows\CurrentVersion\Uninstall\*'
$machine_key = 'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\*'
$machine_key6432 = 'HKLM:\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\*'
$items = Get-ChildItem @($local_key, $machine_key, $machine_key6432)
$ErrorActionPreference = 'Stop'
foreach ($item in $items) {
Write-Output $item.PSPath
$null = Get-ItemProperty $item.PSPath
}
它將注冊表項名稱寫入輸出。 如果它打印錯誤,請取出它打印的最后一個鍵並將其從注冊表中刪除(使用 PowerShell 或regedit
或您喜歡的任何工具)。
之后,重新安裝 Python,它應該按預期安裝 pip。
我正在使用 python 3.6.2 並面臨 python 文件夾中缺少腳本文件夾(也是 pip 腳本)的類似問題。 我已完成以下操作將腳本文件夾再次添加到 python。
嘗試修復應該解決問題的已安裝程序。
甚至我也面臨這個問題。 我通過執行以下步驟解決了它:
卸載蟒蛇。 (您可以使用安裝程序(python-2.7.xx.msi)執行卸載。雙擊安裝程序選擇“刪除Python”選項。)
編輯環境變量 'Path',並刪除 python 目錄路徑。 (要更改環境變量,右鍵單擊“此PC”,單擊屬性,單擊“高級系統屬性”->環境變量)
如果存在,請刪除環境變量“Python Path”。
現在重新安裝python。
它會起作用!!!
實際上安裝python后不會創建scipts文件夾,你必須手動創建這個文件夾然后安裝pip,然后你才能在這個目錄中找到所需的文件。
我也遇到了我設法解決的同樣問題。 問題是當您在默認配置中安裝 python 時,它會在“c:\\user\\Appdata......”中安裝 python 文件夾,該文件夾冗長且難以找到。 為了避免它,首先從控制面板->卸載程序從系統中完全卸載python 3.7。 然后使用“自定義安裝”選項再次安裝它。 在下一頁上,將默認位置更改為 C:/Python/Python37-32 並選中所需的復選框並單擊安裝。 這應該可以解決您的問題。
這是權限問題。 我在下面安裝了 python 2 和 3
C:\\Program Files\\python\\2.7.16
C:\\Program Files\\python\\3.7.2
Python 2 安裝程序是 msi,因此安裝時沒有run as admin
選項
Python 3 安裝程序是 exe,有run as admin
選項。
結果,python 2沒有scripts
安裝, pip.exe
和python 3安裝成功。
要解決此問題,只需向everyone
授予full
權限即可
C:\\Program Files\\python\\
並再次安裝 python 2。 然后將權限改回。
就是這樣。
這個命令對我來說很好用:
python -m ensurepip
查看鏈接:C:\\Users\\kjangala\\AppData\\Local\\Temp\\tmpvd4_442i
收集安裝工具
收集點子
安裝收集的包:setuptools、pip
成功安裝 pip-19.0.3 setuptools-40.8.0
在獲得一台新計算機並恢復我的 appdata 文件夾(企業系統自動為我完成此操作)后,我遇到了這個問題。 當我重新安裝 Python 時,我的%userprofile%\\AppData\\Local\\Programs\\Python
文件夾中的一些舊元數據以某種方式使里面的 Scripts 文件夾最終變為空。
我刪除了這個文件夾並卸載/重新安裝了 Python,一切又恢復了。
編輯:我還必須刪除%userprofile%\\AppData\\Roaming\\Python
以解決另一個類似的錯誤。 有趣的是,這個沒有在重新安裝時重新創建。
我有同樣的問題(win 10,py 3.8.5,可執行安裝程序)。 我找到的解決方案是將python安裝到非標准目錄(D:/而不是受訪問保護的Windows用戶文件夾)。 在這種情況下,將在 Scripts 文件夾中創建文件“easy_install.exe”。 然后打開文件夾內的控制台並調用“easy_install pip”,這將安裝pip。 之后只需將所有內容復制到標准目錄,不要忘記更改環境變量。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.