Seite 1 von 1

PyCharm irgendwie verstellt

Verfasst: Samstag 31. Juli 2021, 09:52
von benjamin222
Hallo,

heute ist mir folgendes aufgefallen: Wenn ich in PyCharm ein Projekt mit mehreren Python Files habe und eines davon ausführe dann werden zuerst alle Files ausgeführt die open als import angegeben wurden. Das will ich nicht natürlich nicht haben. Eine google Suche führte mich dann zu den "Run configurations", aber ich verstehe nicht, was da falsch gesetzt ist.
Zwei Python Files, mit denen ich das reproduzieren kann:

file1:

Code: Alles auswählen

from file2 import a
print('b')

und file2:

Code: Alles auswählen

print('zuerst')

def a():
    pass
Führe ich die obere aus, erscheint auf meinem Bilschirm aber zuerst "zuerst" obwohl ich das gar nicht sehen will.

Re: PyCharm irgendwie verstellt

Verfasst: Samstag 31. Juli 2021, 10:54
von Dennis89
Hallo,

das liegt nicht an PyCharm. Wenn du ein Modul importierst wird es abgearbeitet. Siehe:
https://wiki.pythonde.pysv.org/Import

Man schreibt ja auf Modulebene nur Code, der Konstanten, Funktionen oder Klassen definiert, damit und mit den Hinweisen aus dem Link sollte dein Problem dann erledigt sein.


Grüße
Dennis

Edit:
File1:

Code: Alles auswählen

from file2 import a

def main():
    print('b')
    a()

if __name__ == '__main__':
    main()
File2:

Code: Alles auswählen

def a():
    print('Jetzt kommt a')

def main():
    print('zuerst')

if __name__ == '__main__':
    main()
Führe die Dateien mal beide aus.

Re: PyCharm irgendwie verstellt

Verfasst: Samstag 31. Juli 2021, 10:56
von Sirius3
Wenn Du es nicht sehen willst, darfst Du es nicht schreiben. Module müssen nebenwirkungsfrei importierbar sein, also nur aus Funktionsdefinitionen, Klassen, Konstanten, etc. bestehen.