Heim  >  Fragen und Antworten  >  Hauptteil

Python – Problem mit variablem Gültigkeitsbereich in verschiedenen Dateien

Jetzt gibt es zwei Dateien:

a.py:

x=1
from b import *
printx()
b.py:

def printx():
    print(x)

Beim Aufruf von $ python3 a.py über die Befehlszeile wird ein NameError angezeigt, den ich nicht verstehe. Wird x beim direkten Aufruf von a.py nicht als globale Variable betrachtet? Warum geht es nach den LEGB-Regeln schief?

某草草某草草2710 Tage vor527

Antworte allen(1)Ich werde antworten

  • phpcn_u1582

    phpcn_u15822017-05-18 10:52:10

    x只是a文件内可见呀
    a文件中import了b只是使b文件中的方法printx对a文件可见,可以调用它,并没有改变x对b文件的不可见性。。

    Antwort
    0
  • StornierenAntwort