nie można zainstalować / zaimportować tkintera

15

Mam dość mylący problem:

Buduję program python za pomocą tkintera. Następnie zaktualizowałem mój ubuntu 13.10 (amd64) do ubuntu 14.04 LTS, teraz próbowałem uruchomić program tkinter. Mój kompilator mi powiedział

ImportError: No module named tkinter

(To samo z Tkinter lub tk / Tk) Następnie próbowałem ponownie zainstalować Tkinter za pomocą pip:

$ pip install tkinter


Could not find any downloads that satisfy the requirement tkinter
   Cleaning up...
   No distributions at all found for tkinter

znowu to samo z Tkinter, Tkinter, tk i Tk

Więc co się stało? Czy muszę coś uruchomić

$ pip update

(ponieważ tk nie jest już w repozytorium pip) Ale dlaczego nie jest już zainstalowany na moim komputerze?

Edycja: 1. Nie mam dostępu do konta root 2. w pliku pip.log jest

>

  Downloading/unpacking tk   Getting page
> https://pypi.python.org/simple/tk/   Could not fetch URL
> https://pypi.python.org/simple/tk/: 404 Client Error: Not Found   Will
> skip URL https://pypi.python.org/simple/tk/ when looking for download
> links for tk   Getting page https://pypi.python.org/simple/   URLs to
> search for versions for tk:   * https://pypi.python.org/simple/tk/  
> Getting page https://pypi.python.org/simple/tk/   Could not fetch URL
> https://pypi.python.org/simple/tk/: 404 Client Error: Not Found   Will
> skip URL https://pypi.python.org/simple/tk/ when looking for download
> links for tk   Could not find any downloads that satisfy the
> requirement tk

coś bardzo blisko wydarzyło się, gdy próbowałem zainstalować coś przy użyciu apt na moim RaspberryPi bez uruchamiania

$ apt-get update

na kilka miesięcy

Byłbym szczęśliwy za pomoc.

LittleByBlue
źródło

Odpowiedzi:

19

Spróbuj tego:

sudo apt-get install python-tk

lub, ponieważ twoje pytanie jest oznaczone jako python3, to:

sudo apt-get install python3-tk
ElefantPhace
źródło
1
Próbowałem (na RaspberryPi) nie działa.
LittleByBlue
3
Nie działał jak w ...
ElefantPhace
Próbowałem uruchomić go na moim Raspberry Pi i nie działało
LittleByBlue
2
Mam tego tyle. Jak to nie zadziałało? Jakieś błędy? Co?
ElefantPhace
1
Jesteś pewien, że używasz Ubuntu 14.04? Czy zaktualizowałeś swoje źródła? Jest dostępny na mojej maszynie
ElefantPhace
10

python-tk nie można zainstalować za pomocą pip.

Ponieważ tk jest TkInter (-> Interfejs do TK, który jest napisany w C (++)), musisz zainstalować bibliotekę C (++) TK.

nie można zainstalować tej biblioteki pip, ponieważ pipjest on przeznaczony do instalowania (głównie) [1] czystych pakietów Pythona. Nawiasem mówiąc, nie masz wystarczających uprawnień do zainstalowania biblioteki. Musisz więc poprosić administratora o pomoc.

Jedynym sposobem na jego zainstalowanie jest użycie

sudo apt-get install python-tk # python2

lub

sudo apt-get install python3-tk #python3

I na koniec musisz użyć pip3do zainstalowania pakietów python3.

Jest to to samo, czego nie można zainstalować freetypeprzy użyciu pip.

Uwaga : lepiej jest używaćpython3 -m pipzamiastpip3, ponieważ na komputerze może być wielepython3instalacji (np.python3.4Ipython3.5.1)

[1]: W rzeczywistości pip jest w stanie skompilować biblioteki C / C ++, ale nie wygląda na to, aby mógł zainstalować biblioteki systemowe. Lub jeden stworzy ten pakiet w przyszłości.

LittleByBlue
źródło
Tak więc Tkinter nie może zostać zainstalowany za pomocą pip. Czy to oznacza, że ​​program korzystający z Tkinter nie może korzystać z virtualenv?
tilaprimera
1
virtualenvi virtualenvwrapper(powinieneś użyć virtualenvwrapper) są w stanie używać pakietów systemowych, więc możesz używać tk, ale nie ma niestandardowej tkinstalacji w twoim vitualenv.
LittleByBlue
Czy menedżer pakietów Python's Wheel nie powinien mieć możliwości instalowania takich pakietów binarnych?
Ogromny