Python auf dem Mac - Programm wird nicht ausgeführt

Probleme bei der Installation?
Funchum
User
Beiträge: 16
Registriert: Dienstag 5. Mai 2020, 14:25

Hallo zusammen,
ich habe Python 3.7 auf meinem Mac installiert. IDLE und der Python Launcher laufen also. Wenn ich in Textmate ein Miniprogramm schreibe wie print("HelloWorld"), die Datei als Hello.py auf meinem Desktop abspeicher und dann bei IDLE öffne, schreibt er mir genau das hier, was ich ja schon vorher gecodet habe:
print("Hello World")

Ich möchte aber, dass er mir das Programm ausführt, also nur Hello World schreibt. Wie mache ich das?

Danke für Eure Antworten!

FUNCHUM
__deets__
User
Beiträge: 14528
Registriert: Mittwoch 14. Oktober 2015, 14:29

Du verwechselst gerade bearbeiten und ausfuehren. Ersteres machst du mit IDLE, und das ist auch auf der Doppelklick verknuepft.

Es gibt einen Pylauncher, mit dem kannst du Python-Programme ausfuehren. Such den mal & zieh dein Skript darauf. Du wirst allerdings ggf. enttaeuscht werden, weil ein einfaches print kein Terminalfenster oeffnet. Wenn du das willst, oeffne das Terminal selbst & fuehr dein Programm darin aus.
Funchum
User
Beiträge: 16
Registriert: Dienstag 5. Mai 2020, 14:25

Ich habe meine Hello.py Datei schon auf den PythonLauncher gezogen, dann geht schnell ein kleines Fenster auf (ich nehme an, es sind die Preferences) und weiter passiert nichts. Den Pfad habe ich so angegeben: /usr/local/bin
die .py Datei liegt auf meinem Desktop
Wenn ich IDLE öffne und dort über File/Open die .py-Datei öffne, passiert, das was ich oben beschrieben habe. Es steht da wieder print("HelloWorld").
__deets__
User
Beiträge: 14528
Registriert: Mittwoch 14. Oktober 2015, 14:29

Du kannst das in IDLE auch ausfuehren, mit F5 oder so. Und ich denke nicht, dass das Preferences-Fenster ist. Das ist deine Ausgabe. Nur ist danach dein Programm ja nunmal vorbei. Und dann schliesst die sich auch wieder. Wenn du stattdessen mal

Code: Alles auswählen

while True:
    print("hallo")
ausprobierst, und das auf den Launcher ziehst, was passiert dann?
Funchum
User
Beiträge: 16
Registriert: Dienstag 5. Mai 2020, 14:25

Dann erscheint in meinem Terminal das hier:

Last login: Tue May 5 15:53:58 on ttys000

The default interactive shell is now zsh.
To update your account to use zsh, please run `chsh -s /bin/zsh`.
For more details, please visit https://support.apple.com/kb/HT208050.
cd '/Users/annesimac2018/Desktop/' && '/usr/local/bin' '/Users/annesimac2018/Desktop/hello.py' && echo Exit status: $? && exit 1
unknown989e6326a7d8:~ annesimac2018$ cd '/Users/annesimac2018/Desktop/' && '/usr/local/bin' '/Users/annesimac2018/Desktop/hello.py' && echo Exit status: $? && exit 1
-bash: /usr/local/bin: is a directory
unknown989e6326a7d8:Desktop annesimac2018$

Was bedeutet das denn? Und, Danke für deine angebotene Hilfe...
Funchum
User
Beiträge: 16
Registriert: Dienstag 5. Mai 2020, 14:25

Ich könnte jetzt dort die Anmelde-Shell ändern, aber vorher muß ich wissen, ob das überhaupt Sinn macht und mein Problem ggf. löst. Ich habe die Wahl zwischen:
/bin/bash (das ist aktuell ausgewählt)
/bin/tcsh
/bin/sh
/bin/csh
/bin/zsh

Benutzerordner ist dieser hier: /Users/annesimac2018
__deets__
User
Beiträge: 14528
Registriert: Mittwoch 14. Oktober 2015, 14:29

Nee, da solltest du nix umstellen.

Du schreibst oben "ich habe den Pfad angegeben" - das sieht hier nach der Fehlerursach aus. Denn der probiert dein Skript mit /usr/local/bin auszufuehren. Das geht natuerlich nicht, denn das ist ein Verzeichnis. Kein Python-Intepreter. Da muss /usr/local/bin/python3 stehen, oder so.
Funchum
User
Beiträge: 16
Registriert: Dienstag 5. Mai 2020, 14:25

okay, ich habe ihn auf Werkseinstellungen zurück gesetzt und der lautet jetzt: /usr/bin/pythonw

super! Jetzt passiert was: es kommt hallo hallo hallo und hört nicht mehr auf. eine Endlosschleife...ich schreib mal mein script um
Funchum
User
Beiträge: 16
Registriert: Dienstag 5. Mai 2020, 14:25

hast du ein sinnvolles Testskript für mich? Ich stehe gerade am Anfang, wie du sicher gemerkt hast...Nur ein paar Codezeilen. Ich dachte auch print ginge...
Funchum
User
Beiträge: 16
Registriert: Dienstag 5. Mai 2020, 14:25

Okay, es geht! Das habe ich nun eingegeben:
print("hallo")
zahl = 42
print(zahl)

Und das wird mir ausgegeben über den Launcher:
Last login: Tue May 5 17:09:13 on ttys000

The default interactive shell is now zsh.
To update your account to use zsh, please run `chsh -s /bin/zsh`.
For more details, please visit https://support.apple.com/kb/HT208050.
unknown989e6326a7d8:~ annesimac2018$ cd '/Users/annesimac2018/Desktop/' && '/usr/bin/pythonw' '/Users/annesimac2018/Desktop/hello.py' && echo Exit status: $? && exit 1
hallo
42
Exit status: 0
logout
Saving session...
...copying shared history...
...saving history...truncating history files...
...completed.

[Prozess beendet]


Ich mußte den Launcher beenden und neu starten, da ist irgendetwas strubbelig...Ich danke dir!
Funchum
User
Beiträge: 16
Registriert: Dienstag 5. Mai 2020, 14:25

Es geht doch nicht. Ich hatte jetzt die neueste Version für Mac runtergeladen. Da geht aber kein Fenster auf im Launcher, wenn ich dort heraus Datei öffnen sagen und die .py öffne. Dann habe ich die weggeschmissen und die vorletzte Version runtergeladen. Da das gleiche...Wie doof! Jetzt bin ich doch keinen Schritt weiter. Ich mache mal einen Neustart!
__deets__
User
Beiträge: 14528
Registriert: Mittwoch 14. Oktober 2015, 14:29

Python 3.8 und der Launcher hatte hier neulich auch schon wer Probleme. Nimm mal ruhig Python 3.7
Funchum
User
Beiträge: 16
Registriert: Dienstag 5. Mai 2020, 14:25

Den habe ich jetzt installiert. Und in der Update-Datei folgende Meldung bekommen:
Last login: Tue May 5 17:27:55 on ttys000
/Applications/Python\ 3.7/Update\ Shell\ Profile.command ; exit;
annesimac2018@Annes-iMac-2018 ~ % /Applications/Python\ 3.7/Update\ Shell\ Profile.command ; exit;
This script will update your shell profile when the 'bin' directory
of python is not early enough of the PATH of your shell.
These changes will be effective only in shell windows that you open
after running this script.
All right, you're a python lover already

[Prozess beendet]

Ich habe jetzt in den Systemeinstellungen, wie oben empfohlen bin/zsh genommen
Funchum
User
Beiträge: 16
Registriert: Dienstag 5. Mai 2020, 14:25

Mist, der funktioniert auch nicht...Was mache ich denn jetzt? Hat jemand eine Idee?
Funchum
User
Beiträge: 16
Registriert: Dienstag 5. Mai 2020, 14:25

Das habe ich jetzt erst gesehen eine Install Datei in dem Ordner:
Last login: Tue May 5 17:41:10 on ttys000
/Applications/Python\ 3.7/Install\ Certificates.command ; exit;
annesimac2018@Annes-iMac-2018 ~ % /Applications/Python\ 3.7/Install\ Certificates.command ; exit;
-- pip install --upgrade certifi
Requirement already up-to-date: certifi in /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages (2020.4.5.1)
WARNING: You are using pip version 19.2.3, however version 20.1 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
-- removing any existing file or link
-- creating symlink to certifi certificate bundle
-- setting permissions
-- update complete

[Prozess beendet]


Muß ich jetzt noch was machen?
__deets__
User
Beiträge: 14528
Registriert: Mittwoch 14. Oktober 2015, 14:29

Eh. Keine Ahnung, diese Empfehlung zB zur zsh kommt mir nicht bekannt vor. Die ist schon ok, aber was die mit Python zu tun haben sollte, erschliesst sich mir nicht.

Wie dem auch sei. Die zweite Datei sagt einfach nur, dass du wenn du willst dein pip upgraden kannst. Das solltest du durchaus gelegentlich mal tun, es ist aber auch kein Weltuntergang das mal nicht zu machen. pip ist das Programm zum installieren neuer Python Pakete.
Funchum
User
Beiträge: 16
Registriert: Dienstag 5. Mai 2020, 14:25

Weil ja jetzt gar nichts mehr angezeigt wird, soll ich mal alle Python-programme und Ordner wegschmeissen? Vielleicht ist ja jetzt irgendetwas durcheinander geraten...Oder macht das keinen Sinn?
__deets__
User
Beiträge: 14528
Registriert: Mittwoch 14. Oktober 2015, 14:29

Ich habe das Gefuehl, das du dir zu viele Gedanken machst. Kannst du deine Programme bearbeiten und ausfuehren? Dann ist erstmal doch alles gut.
Funchum
User
Beiträge: 16
Registriert: Dienstag 5. Mai 2020, 14:25

Leider öffnet sich ja kein Fenster im Launcher, sodass ich sehen kann, was ausgegeben wird. So kann ich momentan nur den Terminal benutzen und keine Skripte schreiben, die eingebunden werden können. Wir fangen gerade in der Uni damit an und ich würde gerne alles mitmachen, was gefordert wird...
__deets__
User
Beiträge: 14528
Registriert: Mittwoch 14. Oktober 2015, 14:29

Das verstehe ich nicht. Was genau hat der Pylauncher damit zu tun? Ich habe den noch nie in meinem Leben benutz, und bin schon > 20 Jahre mit Python und > 15 mit macOS unterwegs.
Antworten