ubuntuusers.de

Ausführen eines Python-Programms

Status: Ungelöst | Ubuntu-Version: Ubuntu 16.04 (Xenial Xerus)
Antworten |

Magnul

Anmeldungsdatum:
18. September 2016

Beiträge: 5

Liebe Foren-Gemeinde,

ich habe vor einigen Tagen damit begonnen, die Programmiersprache Python zu lernen. Nachdem mein Handeln vorerst nur auf Übungen aus dem Internet beschränkt war, wollte ich jetzt eine kleine Python-Anwendung in "gedit" schreiben und anschließend ausführen.

Ich habe die Programmiersprache in "gedit" auf "python3" gestellt, ein paar Zeilen Code geschrieben und das ganze anschließend als "Programm.py" abgespeichert.

Aus Recherchen habe ich erfahren, dass Python bereits unter Ubuntu vorinstalliert ist und ich lediglich das Kommando

python3 Programm.py

im Terminal benötige, um mein Programm auszuführen. Dieses Kommando funktioniert allerdings nicht: python3: can't open file 'Programm.py': [Errno 2] No such file or directory

Dann habe ich gelesen, dass ich die Datei auch direkt ausführbar (per Mausklick) machen kann, wenn ich einen sog. shebang, also die Zeile

#!/usr/bin/env python3

an den Anfang des Codes im Programm schreibe und die entsprechenden Zugriffsrechte für die Datei einräume. Das hat allerdings zu nichts geführt - die Datei wurde weiterhin per Mausklick als Code in "gedit" geöffnet.

Nun meine Frage: Was muss ich tun, damit ich das Programm als solches ausführen kann, bzw. was habe ich falsch gemacht?

Bin auf eure Antworten gespannt!

MfG, Magnul

Thomas_Do Team-Icon

Moderator
Avatar von Thomas_Do

Anmeldungsdatum:
24. November 2009

Beiträge: 8808

Die Fehlermeldung besagt, dass die Programmdatei nicht gefunden wird. Was sagt:

ls -la *.py

?

Magnul

(Themenstarter)

Anmeldungsdatum:
18. September 2016

Beiträge: 5

ls: Zugriff auf '*.py' nicht möglich: Datei oder Verzeichnis nicht gefunden

seahawk1986

Anmeldungsdatum:
27. Oktober 2006

Beiträge: 11243

Wohnort: München

In welchem Verzeichnis hast du das Python-Skript abgelegt und was ist dein aktuelles Arbeitsverzeichnis?

pwd

Magnul

(Themenstarter)

Anmeldungsdatum:
18. September 2016

Beiträge: 5

/media/Benutzer/Daten lautet das Verzeichnis, auf dem Programm.py gespeichert ist. Auf diesem Verzeichnis ist auch Ubuntu installiert.

Axel-Erfurt

Anmeldungsdatum:
18. Mai 2016

Beiträge: 1347

dann versuche mal

python3 /media/Benutzer/Daten/Programm.py

noisefloor Team-Icon

Anmeldungsdatum:
6. Juni 2006

Beiträge: 29567

Hallo,

wenn du python3 Programm.py eingibst und ausführst, wird a) der Python 3 Interpreter gestartet und der will dann b) Programm.py laden, und zwar aus dem Verzeichnis,aus dem er aufgerufen wurde. Als wechselst du erst dorthin oder machst es wie von Axle-Erfurt gezeigt.

Wenn du ein Python-Skript so aufrufst reicht es auch, wenn es lesbar ist, ausführbar muss dann nicht sein.

Gruß, noisefloor

user_unknown

Avatar von user_unknown

Anmeldungsdatum:
10. August 2005

Beiträge: 17599

Wohnort: Berlin

Magnul schrieb:

/media/Benutzer/Daten lautet das Verzeichnis, auf dem Programm.py gespeichert ist. Auf diesem Verzeichnis ist auch Ubuntu installiert.

Darüber stolpert keiner? Kommt mir komisch vor. Ob jetzt auf einem Verzeichnis, ab einem Verzeichnis oder in einem Verzeichnis. Wie installiert man Ubuntu in ein Verzeichnis? Läuft das in ener virtuellen Maschine auf Suse, Mint, OSX oder Solaris?

noisefloor Team-Icon

Anmeldungsdatum:
6. Juni 2006

Beiträge: 29567

Hallo,

Darüber stolpert keiner? Kommt mir komisch vor.

Doch, aufgefallen ist mir da auch - aber ich wollte mich in meinem Post erst Mal auf die Basics der Ausführung einer Python-Datei beschränkten und nicht mögliche Obskuritäten der OS-Installation beleuchten 😉

Gruß, noisefloor

axt

Anmeldungsdatum:
22. November 2006

Beiträge: 34254

user_unknown schrieb:

Darüber stolpert keiner? Kommt mir komisch vor.

Aber selbstverständlich. Nur...bringt das Ganze hier irgendwas? Es fehlen Grundlagen und zwar gewaltig (wenn man nicht mal mit Pfaden in einer Shell umgehen kann, fängt man nicht mit Programmieren kann).

Magnul

(Themenstarter)

Anmeldungsdatum:
18. September 2016

Beiträge: 5

Axel-Erfurt schrieb:

dann versuche mal

python3 /media/Benutzer/Daten/Programm.py

Hat funktioniert, da lag wohl das Problem. Danke für die Hilfe bis hierher!

user_unknown schrieb:

Magnul schrieb:

/media/Benutzer/Daten lautet das Verzeichnis, auf dem Programm.py gespeichert ist. Auf diesem Verzeichnis ist auch Ubuntu installiert.

Darüber stolpert keiner? Kommt mir komisch vor. Ob jetzt auf einem Verzeichnis, ab einem Verzeichnis oder in einem Verzeichnis. Wie installiert man Ubuntu in ein Verzeichnis? Läuft das in ener virtuellen Maschine auf Suse, Mint, OSX oder Solaris?

Ich bin vor einigen Tagen erst zu Ubuntu gekommen und war jahrelang Windows-Nutzer. Die Aussage ist so gemeint, dass ich vorerst ein Dual-Boot-System einrichten wollte, bis ich mich komplett für Linux entscheide. Aus diesem Grund wurde Ubuntu in das genannte Verzeichnis installiert, welches unter Windows im Endeffekt D:\Daten heißt. Ich habe schon selbst angenommen, dass die Aussage vermutlich nicht zu 100 Prozent korrekt ist, aber ich bin ja gerade in der Lernphase und für mein Problem war die Ausdrucksweise nicht essentiell.

axt schrieb:

user_unknown schrieb:

Darüber stolpert keiner? Kommt mir komisch vor.

Aber selbstverständlich. Nur...bringt das Ganze hier irgendwas? Es fehlen Grundlagen und zwar gewaltig (wenn man nicht mal mit Pfaden in einer Shell umgehen kann, fängt man nicht mit Programmieren kann).

Ich kann deine Sichtweise verstehen, aber Python ist mit jedem Betriebssystem nutzbar und ich komme nun mal von einem Betriebssystem, in dem es keine Shell und andere Pfadangaben gibt. Natürlich bin ich momentan noch Neuling und muss mir dieses Wissen erst aneignen, aber das sollte mich doch nicht von den ersten Einsteiger-Tutorials für Python abhalten. Hättest du vielleicht ein paar Schlagwörter für mich, nach denen ich Ausschau halten bzw. suchen kann, um mich bezüglich Shell zu bilden?

Thomas_Do Team-Icon

Moderator
Avatar von Thomas_Do

Anmeldungsdatum:
24. November 2009

Beiträge: 8808

Magnul schrieb:

Ich kann deine Sichtweise verstehen, aber Python ist mit jedem Betriebssystem nutzbar und ich komme nun mal von einem Betriebssystem, in dem es keine Shell und andere Pfadangaben gibt. Natürlich bin ich momentan noch Neuling und muss mir dieses Wissen erst aneignen, aber das sollte mich doch nicht von den ersten Einsteiger-Tutorials für Python abhalten. Hättest du vielleicht ein paar Schlagwörter für mich, nach denen ich Ausschau halten bzw. suchen kann, um mich bezüglich Shell zu bilden?

Hast Du Ubuntu unter Windows installiert (Wubi)? Das wäre wichtig zu wissen.

Eine Shell (sogar eine Powershell!) und Pfade gibt es auch unter Windows. Sind nur etwas anders 😉. Ist ja schön, dass Du Dich in Linux einarbeiten willst. Such mal unter dem Stichwort "Bash", da gibt es "tonnenweise" Infos im internet.

track

Avatar von track

Anmeldungsdatum:
26. Juni 2008

Beiträge: 7174

Wohnort: Wolfen (S-A)

Hi Magnul,

zuerst mal: ganz herzlich willkommen hier auf dem Forum !
Sehr positiv finde ich übrigens, dass Du auch mit einem polemischen Hinweis noch richtig konstruktiv umgehst !

Magnul schrieb:

... Natürlich bin ich momentan noch Neuling und muss mir dieses Wissen erst aneignen, aber das sollte mich doch nicht von den ersten Einsteiger-Tutorials für Python abhalten.
Hättest du vielleicht ein paar Schlagwörter für mich, nach denen ich Ausschau halten bzw. suchen kann, um mich bezüglich Shell zu bilden?

Vielleicht 2 Hinweise zum Ein- / Umstieg:

  1. unser Skripting-Wiki. Da dort auch nur die Shellbefehle benutzt werden, ist es zugleich ein guter Einstieg in die *nix- Befehlswelt.

  2. die Unix Filesystem Hierarchy - die ist praktisch überall gleich, und wenn Du die soweit verinnerlicht hast, weißt Du, wo Du was suchen musst.

Und denk dran: unter *nix gilt "Alles ist eine Datei" (also irgendwo im Dateisystem zugänglich) !

LG und viel Erfolg !

track

rklm Team-Icon

Projektleitung

Anmeldungsdatum:
16. Oktober 2011

Beiträge: 13166

track schrieb:

zuerst mal: ganz herzlich willkommen hier auf dem Forum !

Auch von mir ein herzliches Willkommen!

Vielleicht 2 Hinweise zum Ein- / Umstieg:

  1. unser Skripting-Wiki. Da dort auch nur die Shellbefehle benutzt werden, ist es zugleich ein guter Einstieg in die *nix- Befehlswelt.

  2. die Unix Filesystem Hierarchy - die ist praktisch überall gleich, und wenn Du die soweit verinnerlicht hast, weißt Du, wo Du was suchen musst.

Und denk dran: unter *nix gilt "Alles ist eine Datei" (also irgendwo im Dateisystem zugänglich) !

Wir haben ja sogar etwas in unserem Wiki über Dateisysteme. 😉

Magnul

(Themenstarter)

Anmeldungsdatum:
18. September 2016

Beiträge: 5

Thomas_Do schrieb:

Magnul schrieb:

Ich kann deine Sichtweise verstehen, aber Python ist mit jedem Betriebssystem nutzbar und ich komme nun mal von einem Betriebssystem, in dem es keine Shell und andere Pfadangaben gibt. Natürlich bin ich momentan noch Neuling und muss mir dieses Wissen erst aneignen, aber das sollte mich doch nicht von den ersten Einsteiger-Tutorials für Python abhalten. Hättest du vielleicht ein paar Schlagwörter für mich, nach denen ich Ausschau halten bzw. suchen kann, um mich bezüglich Shell zu bilden?

Hast Du Ubuntu unter Windows installiert (Wubi)? Das wäre wichtig zu wissen.

Nein, ich habe das System direkt von einer Live-CD aus installiert. Die entsprechende Partition wurde während der Installation automatisch erstellt. Ich habe mir aufgrund der Speicherplatzveränderung, die ich unter Windows festgestellt habe, dann erschlossen, dass Ubuntu sich wohl meine Daten-Platte für die Partition ausgesucht haben muss.

Vielen Dank für die nette Aufnahme und die vielen Links! Ihr helft mir sehr!

Antworten |