Ich habe Sudo pip install -U nltk
gemacht, wie in der nltk-Dokumentation vorgeschlagen. Ich erhalte jedoch die folgende Ausgabe:
Collecting nltk
Downloading nltk-3.0.5.tar.gz (1.0MB)
100% |████████████████████████████████| 1.0MB 516kB/s
Collecting six>=1.9.0 (from nltk)
Downloading six-1.9.0-py2.py3-none-any.whl
Installing collected packages: six, nltk
Found existing installation: six 1.4.1
DEPRECATION: Uninstalling a distutils installed project (six) has been deprecated and will be removed in a future version. This is due to the fact that uninstalling a distutils project will only partially uninstall the project.
Uninstalling six-1.4.1:
Exception:
Traceback (most recent call last):
File "/Library/Python/2.7/site-packages/pip/basecommand.py", line 211, in main
status = self.run(options, args)
File "/Library/Python/2.7/site-packages/pip/commands/install.py", line 311, in run
root=options.root_path,
File "/Library/Python/2.7/site-packages/pip/req/req_set.py", line 640, in install
requirement.uninstall(auto_confirm=True)
File "/Library/Python/2.7/site-packages/pip/req/req_install.py", line 716, in uninstall
paths_to_remove.remove(auto_confirm)
File "/Library/Python/2.7/site-packages/pip/req/req_uninstall.py", line 125, in remove
renames(path, new_path)
File "/Library/Python/2.7/site-packages/pip/utils/__init__.py", line 315, in renames
shutil.move(old, new)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/shutil.py", line 302, in move
copy2(src, real_dst)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/shutil.py", line 131, in copy2
copystat(src, dst)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/shutil.py", line 103, in copystat
os.chflags(dst, st.st_flags)
OSError: [Errno 1] Operation not permitted: '/tmp/pip-7dp3on-uninstall/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/six-1.4.1-py2.7.Egg-info'
Grundsätzlich ist es nicht möglich, sechs von 1.4.1 auf 1.9.0 zu aktualisieren. Ich habe das separat versucht, bekam aber den gleichen Fehler.
Ich erwähne El Capitan, weil einige Leute Probleme mit anderen Python-Installationen auf El Capitan haben und ich frage mich, ob dies daran liegt.
Weiß jemand, wie man dieses Problem löst?
So habe ich die Probleme behoben:
Installieren Sie zuerst Xcode CLI
:
xcode-select --install
Dann Python
neu installieren:
Sudo brew reinstall python
Installieren Sie schließlich nltk
:
Sudo pip install -U nltk
Ich hoffe es hilft :)
Ich weiß, dass es eine Menge 'Brew Booster' gibt, aber Sie sollten keinen anderen Python für etwas so grundlegendes verwenden. Wenn eine Abhängigkeit von pip
in/System gefunden wird, wie sie in South Park gesagt haben: "Sie werden eine schlechte Zeit haben". Wenn Sie diese Änderung nicht systemweit vornehmen müssen, können Sie einfach pip install --user <package>
hinzufügen und $HOME/Library/Python/2.7/bin
zu Ihrem Shell-Pfad hinzufügen (über ~/.bash_profile
usw.).
beide ergeben sechs Versionen 1.41:
pip install --ignore-installed six
pip install awsebcli --upgrade --ignore-installed six
der Brew Workaround ist derjenige, der Sinn macht, imo. Wenn Apple eine eigene Python-Version für El Capitan benötigt, kann sie es haben. Mine ist jetzt hier: /usr/local/bin/python
Das System Python kann aufgrund des brandneuen System Integrity Protection-Mechanismus, durch den alle Änderungen des Systemverzeichnisses von "root" deaktiviert werden, nicht per pip aktualisiert oder geändert werden. Sie können SIP in der Wiederherstellungsumgebung mithilfe von Anweisungen deaktivieren, die an anderer Stelle verfügbar sind (z. B. http://www.howtogeek.com/230424/wie- and-why-you-shouldnt/ ), aber eine bessere Lösung ist die Verwendung des Arguments --user zur Installation in Ihrem lokalen Verzeichnis:
pip install --user nltk
Dadurch bleibt nltk in Ihrem lokalen Basisverzeichnis.
> python
>>> import nltk
>>> nltk
>>> <module 'nltk' from '/Users/yourusername/Library/Python/2.7/lib/python/site-packages/nltk/__init__.pyc'>
Wenn Sie versuchen, etwas zu installieren, das global zugänglich ist, funktioniert das nicht. Wenn Sie jedoch nur Dinge installieren möchten, die Sie mit Ihrer eigenen Benutzer-ID ausführen, funktioniert das problemlos.
Ich hatte das gleiche Problem ... Ich verwende brew, um Pakete zu verwalten. Sie müssen also zuerst brew doctor
ausführen. Sie werden die Probleme mit Ihrem Setup auflisten, korrigieren. In meinem Fall war/usr/local nicht beschreibbar, also musste ich es reparieren
Dann renne
brew reinstall python
Dies behebte mein Problem und ich konnte Pakete mit pip installieren
Alles kar :
die einfache einfache Wahrheit ist eine hybride Antwort von ein paar anderen, die hier formuliert wurden:
Amen
Wenn Sie das Verzeichnis/usr/local bereits erstellt haben, führen Sie den folgenden Befehl in terminal aus:
Sudo chown $ (whoami): admin/usr/local && Sudo chown -R $ (whoami): admin/usr/local
von http://digitizor.com/2015/10/01/fix-homebrew-permissions-osx-el-capitan/