Deine Variablen liegen im Scope von home_test() und sind beim
Importieren nicht sichtbar.
Beispiel:
main.py:
1 | a = 0
|
2 |
|
3 | class foo():
|
4 | b = 1
|
5 | def __init__(self):
|
6 | self.c = 2
|
second.py:
1 | import main
|
2 |
|
3 | f = main.foo()
|
4 | print(main.a, f.b, f.c)
|
a ist eine globale Variable, die entsprechend direkt unterhalb von main.
lebt. Es funktioniert, ist aber unsauber. Typischerweise nimmt man eine
Klasse, hier foo(), worin man Variablen direkt (b) oder zur Laufzeit (c)
setzen kann. Diese sind dann sauber gekapselt und kollidieren nicht mit
irgendwelchen zufaellig existierenden anderen globalen Variablen.
Der Tipp mit "return" ist die Antwort auf den (unklar gewaehlten) Titel
vom OP, aber offensichtlich moechte der OP herumimportieren.