Gestaltung Package / __init__.py
Verfasst: Freitag 21. Juli 2017, 14:51
Hallo,
beim erstellen von Packages ist mir etwas aufgefallen, was ich mir spontan nicht erklären kann.
Folgendes Setup:
main.py
package
-->__init__.py
-->subpackage
---->__init__.py
In package/__init__.py includiere ich das subpackage. Wenn ich nun die package/__init__.py laufen lasse, wird durch das importieren alles doppelt ausgeführt??? Wie lässt sich das erklären?
main.py
package/__init__.py
subpackage/__init__.py
Wenn ich die Main starte, wird alles wie man es erwartet ausgegeben:
Wenn ich das package/__init__.py ausführe, wird alles doppelt ausgeführt (wegen dem import?):
Wie kann man verhindern, dass beim Importieren von package.subpackage auch package ausgeführt wird?
Wie würde eine ordentlich Struktur aussehen?
Beste Grüße
homerunjack
beim erstellen von Packages ist mir etwas aufgefallen, was ich mir spontan nicht erklären kann.
Folgendes Setup:
main.py
package
-->__init__.py
-->subpackage
---->__init__.py
In package/__init__.py includiere ich das subpackage. Wenn ich nun die package/__init__.py laufen lasse, wird durch das importieren alles doppelt ausgeführt??? Wie lässt sich das erklären?
main.py
Code: Alles auswählen
import package
x = package.hallo1()
Code: Alles auswählen
import package.subpackage as sub
class hallo1():
def __init__(self):
print('Das ist ein Package')
print('Hallo')
y = sub.hallo2()
Code: Alles auswählen
class hallo2():
def __init__(self):
print('Hallo2')
a = 1
b = 2
print(a+b)
Code: Alles auswählen
Hallo
Hallo2
3
Das ist ein Package
Code: Alles auswählen
Hallo
Hallo2
3
Hallo
Hallo2
3
Wie würde eine ordentlich Struktur aussehen?
Beste Grüße
homerunjack