Importieren von anderen Programmen (Python)

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
Kalli87
User
Beiträge: 281
Registriert: Montag 10. November 2014, 11:27

Grüße,

mal eine recht bescheidene Frage.
Ich möchte eine datei importieren, besser gesagt ein anderes
Programm was mit Python schon geschrieben wurde.

Das Programm ist aber keine Bibliothek wo Funktionen
abgelegt sind, es ist eigenständig.

Weiß nicht so recht wie ich es beschreiben soll :oops:
Hoffe ihr wisst was ich versuche euch zu sagen :wink:
Sirius3
User
Beiträge: 18335
Registriert: Sonntag 21. Oktober 2012, 17:20

@Kalli87: und was ist jetzt die Frage?
Auf oberster Ebene sollten außer Konstanten und Funktionsdefinitionen sowieso nichts stehen. Damit ist jedes Programm automatisch auch als Modul importierbar, ohne Seiteneffekte. Falls das bei Deinem Modul anders sein sollte, wäre jetzt ein guter Zeitpunkt, den Code umzustrukturieren.
Kalli87
User
Beiträge: 281
Registriert: Montag 10. November 2014, 11:27

Wie importiere ich ein Python-Programm
in ein anderes Python-Programm?

Sorry falls es nicht wirklich verständlich war.

Edit:
google hilft mir gar nicht, spukt eher zeug aus wie man C in Python
importiert und solche sachen.

Hab meine beiden Bücher gewälzt und da finde ich diesbezüglich
nicht mal ansatzweise etwas darüber
EyDu
User
Beiträge: 4881
Registriert: Donnerstag 20. Juli 2006, 23:06
Wohnort: Berlin

Ein Python-Programm ist nichts anderes als ein Modul, dass kannst du also auch so importieren.

Es wäre außerdem sehr nett, wenn du nicht überall in deinen Texten unnötige Zeilenumbrüche einfügen würdest, das liest sich grausam.
Das Leben ist wie ein Tennisball.
Benutzeravatar
pillmuncher
User
Beiträge: 1532
Registriert: Samstag 21. März 2009, 22:59
Wohnort: Pfaffenwinkel

@Kalli87: Angenommen, die Datei, die du importieren möchtest, heißt blablubb.py. Dann musst du dort, wo du sie importieren möchtest, import blablubb hinschreiben. Fertig.
In specifications, Murphy's Law supersedes Ohm's.
Kalli87
User
Beiträge: 281
Registriert: Montag 10. November 2014, 11:27

pillmuncher hat geschrieben:@Kalli87: Angenommen, die Datei, die du importieren möchtest, heißt blablubb.py. Dann musst du dort, wo du sie importieren möchtest, import blablubb hinschreiben. Fertig.
Das wollte ich wissen, Danke
Benutzeravatar
darktrym
User
Beiträge: 785
Registriert: Freitag 24. April 2009, 09:26

Du musst merkwürdige Bucher besitzen, wenn sowas nicht drin steht und dir der Tipp bereits weiterhilft.
„gcc finds bugs in Linux, NetBSD finds bugs in gcc.“[Michael Dexter, Systems 2008]
Bitbucket, Github
Kalli87
User
Beiträge: 281
Registriert: Montag 10. November 2014, 11:27

Einmal "Einstieg in Python" (Python 3.3 und Python 2.7)
Da wird halt erklärt was "Import" macht und zwar zusätzliche Module importieren nur wie das funktioniert bzw. wie der Syntax aufgebaut ist, dazu steht nix. Quasi eine kurze Beschreibung mehr nicht keine nähere Erläuterung.

Das andere heißt "Python 3 - Lernen und professionell anwenden"
Hier steht schon mehr dazu aber ich wusste ehrlich gesagt nicht das Programme welche in Python geschrieben wurden man mit Modulen gleichsetzen kann. Module sehe ich wie eine Art Bibliothek an die Funktionen beinhalten die man öfters braucht und nicht immer wieder neu schreiben muss wenn man diese in so ein "Modul" schreibt.
Sirius3
User
Beiträge: 18335
Registriert: Sonntag 21. Oktober 2012, 17:20

@Kalli87: und was enthält ein Programm anderes, als Funktionen? Wenn man nicht gerade in die Interna des Modulsuchens einsteigen will, gibt es zu Import auch nicht mehr zu sagen als einen Satz: "import abc" stellt das Modul abc mit den Namen abc im Namensraum des Aufrufer zur Verfügung, "from abc import xyz" stell das Objekt mit dem Namen xyz aus dem Modul abc im Namensraum des Aufrufer zur Verfügung.
Benutzeravatar
noisefloor
User
Beiträge: 4253
Registriert: Mittwoch 17. Oktober 2007, 21:40
Wohnort: WW
Kontaktdaten:

Hallo,
Sirius3 hat geschrieben:und was enthält ein Programm anderes, als Funktionen?
Der Sinnlosigkeit sind doch bekanntlich keine Grenzen gesetzt ;-)

@Kalli87: grundsätzlich kannst du jeden Python-Code per ìmport` imporieren - sinnvoll ist das aber nur, wenn du aus diesem Python-Code Klassen, Funktionen oder Konstanten brauchst. Module sind auch "nur" Python-Code, aber eben (hoffentlich) sinvoll strukturiert und in Klassen / Funktionen / Konstanten strukturiert.

Außerdem haben Modue nicht unbedingt eine "stand-alone" Funktionalität, d.h. beim Auftruf von `python modulname.py`passiert nichts.

Was man wie importiert und wie man das importierte dann im eigenen Python-Code nutzt ist übrigens absolute Grundöage und essentiell wichtig. Ohne das Verstand zu haben kommst du mit Python nicht weit.

Gruß, noisefloor
Kalli87
User
Beiträge: 281
Registriert: Montag 10. November 2014, 11:27

Danke für die ganzen Antworten von euch.
Mag sein das meine Frage in euren Augen ziemlich Sinnlos war, aber was will ich machen? Mehr als lernen aus meinen Fehlern kann ich nicht und ich gebe mir auch wirklich mühe aber ihr seht ja selbst das ich trotz alledem noch meine Probleme habe, was man anhand der gestellten Fragen erkennen kann.

@noisefloor
Das dass ganze zu den Grundlagen gehört streite ich gar nicht ab, was ich nur zu meiner Verteidigung sagen kann ist das ich durchs alleinige lernen nur schwer voran komme und auf Hilfe angewiesen bin.
Ist irgendwann eine gewisse Routine eingetreten wird das auch besser aber vorher, siehst ja selbst was dabei raus kommt ;)
Benutzeravatar
noisefloor
User
Beiträge: 4253
Registriert: Mittwoch 17. Oktober 2007, 21:40
Wohnort: WW
Kontaktdaten:

Hallo,

aus Fehlern lernen ist ja das wichtigste. Jeder hat mal klein angefangen. Wenn ich heute meinen ersten Python-Code anschaue finde ich den auch ziemlich gruselig ;-)

Noch eine Anmerkung zu Bücher: ich habe ja auch schon eine ganze Menge (Python-) Bücher gelesen und muss leider sagen: mir ist kein gutes deutsches Buch bekannt... Rezensionen sind übrigens alle bei freiesMagazin zu lesen.

Was gute Einsteiger-Lektüren sind:
* das offizielle Python-Tutorial
* Learn Python the hards way (ist nicht so schwer, wie der Titel suggeriert)

Und was hilft: hier fragen, auch wenn das manchmal etwas hart sein kann ;-)

Gruß, noisefloor
nezzcarth
User
Beiträge: 1792
Registriert: Samstag 16. April 2011, 12:47

Kalli87 hat geschrieben:Danke für die ganzen Antworten von euch.
Mag sein das meine Frage in euren Augen ziemlich Sinnlos war, aber was will ich machen? Mehr als lernen aus meinen Fehlern kann ich nicht und ich gebe mir auch wirklich mühe aber ihr seht ja selbst das ich trotz alledem noch meine Probleme habe, was man anhand der gestellten Fragen erkennen kann.
Na ja, es gibt ja auch durchaus Programmiersprachen, in denen Module strukturell anders aufgebaut sind, als anderer Programmcode; Python macht es einem da halt besonders einfach. Insofern finde ich die Frage nicht ganz abwegig.
Antworten