Zu doof für setup.py

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
grum.py
User
Beiträge: 137
Registriert: Montag 11. Mai 2015, 15:27

Ich habe gerade mein erstes Python-Modul geschrieben und wollte das mal installierbar machen. Ich habe dafür eine setup.py geschrieben, in der ich mein Modul als py_modules eingetragen habe. pip install . läuft anstandslos durch.

Code: Alles auswählen

setup(name="MyModule",
      ...
      py_modules=["MyModule"])
Aber nutzen kann ich es dann nicht:

Code: Alles auswählen

from MyModule import fun1
ImportError: cannot import name fun1
Warum nicht? :K

-edit- "fun1" ist natürlich definiert.
Benutzeravatar
cofi
Python-Forum Veteran
Beiträge: 4432
Registriert: Sonntag 30. März 2008, 04:16
Wohnort: RGFybXN0YWR0

Gibt es vielleicht noch ein anderes Modul mit dem Namen? Ergibt

Code: Alles auswählen

import MyModule
print MyModule.__file__
einen plausiblen Pfad?
grum.py
User
Beiträge: 137
Registriert: Montag 11. Mai 2015, 15:27

Manchmal kann es so einfach sein. Da kriege ich einen Syntaxfehler. :shock: :mrgreen: :oops:

Äh, danke.
BlackJack

@grum.py: Du meinst beim ``print``? Dann verwendest Du Python 3!?
grum.py
User
Beiträge: 137
Registriert: Montag 11. Mai 2015, 15:27

Ich hab' da mit __future__ rumgespielt, ich verwende beides und bekomme in beiden unterschiedliche Meldungen ... ;)
Benutzeravatar
cofi
Python-Forum Veteran
Beiträge: 4432
Registriert: Sonntag 30. März 2008, 04:16
Wohnort: RGFybXN0YWR0

Wenn du pip benutzt, musst du fuer jede Python-Version, die du benutzen willst, das Paket extra installieren.

Und um das raten zu beenden: Welche Meldung bekommst du in welcher Version, wenn du was tust?
Benutzeravatar
Kebap
User
Beiträge: 687
Registriert: Dienstag 15. November 2011, 14:20
Wohnort: Dortmund

BlackJack hat geschrieben:@grum.py: Du meinst beim ``print``? Dann verwendest Du Python 3!?
Ich glaube, du verwechselst mit seiner Signatur.
MorgenGrauen: 1 Welt, 8 Rassen, 13 Gilden, >250 Abenteuer, >5000 Waffen & Rüstungen,
>7000 NPC, >16000 Räume, >200 freiwillige Programmierer, nur Text, viel Spaß, seit 1992.
BlackJack

@Kebap: Nein ich meinte diesen Code von cofi:

Code: Alles auswählen

import MyModule
print MyModule.__file__
Der brachte laut OP einen Syntaxfehler beim ``print``, und das kann eigentlich ja nur unter Python 3 passieren, oder wenn man da noch so etwas wie ``from __future__ import print_function`` vor schreibt. Was ja dann letztendlich das Problem war.
grum.py
User
Beiträge: 137
Registriert: Montag 11. Mai 2015, 15:27

cofi hat geschrieben:Wenn du pip benutzt, musst du fuer jede Python-Version, die du benutzen willst, das Paket extra installieren.
Oh, und wieder hab ich was gelernt. Das wird lustig unter Windows. Mal sehen. Danke.

Die eigentlichen Probleme haben mit meiner Setup.py also gar nichts zu tun. ;)
Antworten