Grundlage "import"

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.
mutetella
User
Beiträge: 1695
Registriert: Donnerstag 5. März 2009, 17:10
Kontaktdaten:

MoonKid hat geschrieben:... obwohl Pythons Philosophie sowas ja verhindern möchte.
Wie kommst Du darauf?

mutetella
Entspanne dich und wisse, dass es Zeit für alles gibt. (YogiTea Teebeutel Weisheit ;-) )
Benutzeravatar
/me
User
Beiträge: 3561
Registriert: Donnerstag 25. Juni 2009, 14:40
Wohnort: Bonn

mutetella hat geschrieben:Wie kommst Du darauf?

Code: Alles auswählen

>>> import this
[...]
There should be one-- and preferably only one --obvious way to do it.
[...]
mutetella
User
Beiträge: 1695
Registriert: Donnerstag 5. März 2009, 17:10
Kontaktdaten:

@/me
Wobei sich Python selbst nicht daran hält, wie man in diesem Fall sieht. Ich denke auch nicht, dass sich das hierauf ableiten ließe. Es sollte IMHO immer verschiedene Wege geben [dürfen], etwas zu lösen.

mutetella
Entspanne dich und wisse, dass es Zeit für alles gibt. (YogiTea Teebeutel Weisheit ;-) )
BlackJack

@mutetella: Dürfen ja, aber wenn es mehrere Wege gibt, was ja meistens der Fall ist, es aber einen *offensichtlichen* gibt der von allen anderen benutzt wird, sollte man diesem „ausgetretenen Pfad” folgen. Und inwiefern hält sich Python da nicht dran? Python selbst will und kann niemanden daran hindern unsinnige oder ungewöhnliche Sachen zu machen.
mutetella
User
Beiträge: 1695
Registriert: Donnerstag 5. März 2009, 17:10
Kontaktdaten:

@BlackJack
Ok, ich hab' dem 'obvious' zu wenig Bedeutung gegeben... Wobei eben dieser ``import`` Fall zeigt, dass Python mit Sternchenimporten etwas zur Verfügung stellt, das neben den offensichtlichen und empfehlenswerten Methoden eine gegensätzliche Möglichkeit bietet.

mutetella
Entspanne dich und wisse, dass es Zeit für alles gibt. (YogiTea Teebeutel Weisheit ;-) )
Benutzeravatar
/me
User
Beiträge: 3561
Registriert: Donnerstag 25. Juni 2009, 14:40
Wohnort: Bonn

mutetella hat geschrieben:Wobei eben dieser ``import`` Fall zeigt, dass Python mit Sternchenimporten etwas zur Verfügung stellt, das neben den offensichtlichen und empfehlenswerten Methoden eine gegensätzliche Möglichkeit bietet.
PEP-8 zeigt einen (und zwar exakt einen) möglichen sinnvollen Anwendungsfall für Sternchen-Importe auf.
BlackJack

@mutetella: Der Sternchenimport hat seine Berechtigung in der Python-Shell und auch bei Modulen die explizit dafür gedacht sind auf diese Weise importiert zu werden. Ein Beispiel wäre `pygame.locals` was eben nicht *alles* aus `pygame` importiert sondern nur ausgewähltes, zum Beispiel die ganzen Konstanten für Tastenwerte oder Eventtypen. Oder wenn man den Inhalt eines Moduls über ein anderes zur Verfügung stellen möchte.
Antworten