Anaconda: Spyder funktioniert nicht in Python 2.7 Umgebung

Probleme bei der Installation?
Antworten
earloop
User
Beiträge: 38
Registriert: Sonntag 11. Oktober 2020, 13:54

Hallo,

ich habe Anaconda auf Windows installiert und eine Python 2.7 Umgebung eingerichtet, aktiviert und Spyder installiert

Code: Alles auswählen

conda create --name python2.7.13 python=2.7.13
conda activate python2.7.13
conda install spyder
Das hat soweit funktioniert. Aber ich kann Spyder nicht starten:

Code: Alles auswählen

(python2.7.13) PS C:\WINDOWS\system32> spyder
Traceback (most recent call last):
  File "C:\ProgramData\Anaconda3\envs\python2.7.13\lib\site-packages\spyder\app\mainwindow.py", line 3208, in main
    mainwindow = run_spyder(app, options, args)
  File "C:\ProgramData\Anaconda3\envs\python2.7.13\lib\site-packages\spyder\app\mainwindow.py", line 3082, in run_spyder
    main = MainWindow(options)
  File "C:\ProgramData\Anaconda3\envs\python2.7.13\lib\site-packages\spyder\app\mainwindow.py", line 373, in __init__
    from spyder.plugins.shortcuts import ShortcutsConfigPage
  File "C:\ProgramData\Anaconda3\envs\python2.7.13\lib\site-packages\spyder\plugins\shortcuts.py", line 835, in <module>
    class ShortcutsConfigPage(GeneralConfigPage):
  File "C:\ProgramData\Anaconda3\envs\python2.7.13\lib\site-packages\spyder\plugins\shortcuts.py", line 839, in ShortcutsConfigPage
    ICON = ima.icon('keyboard')
  File "C:\ProgramData\Anaconda3\envs\python2.7.13\lib\site-packages\spyder\utils\icon_manager.py", line 267, in icon
    directory=_resource['directory'])
  File "C:\ProgramData\Anaconda3\envs\python2.7.13\lib\site-packages\qtawesome\__init__.py", line 178, in load_font
    return _instance().load_font(prefix, ttf_filename, charmap_filename, directory)
  File "C:\ProgramData\Anaconda3\envs\python2.7.13\lib\site-packages\qtawesome\__init__.py", line 54, in _instance
    'materialdesignicons-webfont-charmap.json')
  File "C:\ProgramData\Anaconda3\envs\python2.7.13\lib\site-packages\qtawesome\iconic_font.py", line 206, in __init__
    super().__init__()
TypeError: super() takes at least 1 argument (0 given)
Benutzeravatar
sparrow
User
Beiträge: 4165
Registriert: Freitag 17. April 2009, 10:28

Python 2.7 ist end of life.
Verwende eine Version, die noch unterstützt wird.
earloop
User
Beiträge: 38
Registriert: Sonntag 11. Oktober 2020, 13:54

Ich habe schon mitbekommen, dass Python 2.7 nicht mehr unterstützt wird und mir wäre es auch lieber eine aktuelle Version zu benutzen. Ich verwende 2.7 nicht zum Spaß, sondern weil die API mit der ich arbeite keine aktuelleren Versionen erlaubt.
Benutzeravatar
__blackjack__
User
Beiträge: 13006
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

@earloop: Dann müsstest Du mindestens `qtawesome` zu einer Version downgraden die noch mit Python 2 läuft. Und hoffen das mit *der* dann das aktuelle Spyder klar kommt. Ansonsten eben Spyder auf eine Version downgraden wo alle Abhängigkeiten noch mit Python 2 laufen.
“Most people find the concept of programming obvious, but the doing impossible.” — Alan J. Perlis
earloop
User
Beiträge: 38
Registriert: Sonntag 11. Oktober 2020, 13:54

Wie finde ich heraus welche Version von qtawesome mit Python 2.7 kompatibel ist?

Ich dachte, der Sinn von Python-Distribution wie Anaconda und das Erstellen von Environments mit anderen Python Versionen, besteht darin, dass man sich eben nicht manuell darum kümmern muss, dass die einzelnen Pakete zueinander passen...
Benutzeravatar
__blackjack__
User
Beiträge: 13006
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

@earloop: Gute Frage. Im Python Package Index stehen die unterstützten Python-Versionen bei den `qtawesome`-Versionen. Ich würde aber auch erst einmal schauen wie das mit Spyder selbst aussieht. Denn da steht dort bei der aktuellen Version auch nur noch Python 3.

Anaconda wird da wohl eher nicht so viel an den Paketen selbst herumbasteln, und in denen stehen die Abhängigkeiten. Wie gut/genau die Versionen dort eingegrenzt liegt in der Hand der einzelnen Entwickler der Pakete. Die Spyder-Entwickler werden auch keine Gedanken mehr an Python 2 verschwenden. Da kannst Du davon ausgehen das eine aktuelle Version wenn überhaupt, nur noch zufällig mit Python 2 funktioniert. Und Numpy & Co hängen da ja auch mit drin. Die haben auch schon vor einer gefühlten Ewigkeit, auf jedem Fall sogar deutlich vor Ende vom Python 2 „end of life“ aufgehört Python 2 zu unterstützen. Da gab es also auch vorm EOL schon nicht mehr das aktuellste für Python 2, sondern einen ”eingefrorenen” Zustand der etwas älter ist.

Verspricht Anaconde denn überhaupt noch irgendwie mit Python 2.7 kompatibel zu sein?

Was immer Du machst, versuche von der API wegzukommen die Dich zu 2.7 zwingt.

Nächste Frage: Warum überhaupt Spyder? Nimm halt eine andere IDE bei der man nicht darauf angewiesen ist das die IDE das gleiche Python verwendet wie die Programme die man damit entwickelt.
“Most people find the concept of programming obvious, but the doing impossible.” — Alan J. Perlis
Antworten