suchen

Heim  >  Fragen und Antworten  >  Hauptteil

Warum kann Pythons __all__ nicht verhindern, dass auf nicht exportierte Inhalte nicht zugegriffen werden kann?

Tatsächliches Phänomen

  1. Ich freue mich darauf, den Modulzugriff zu kontrollieren__all__

  2. Laut Community-Vertrag beginnen private Dinge mit

    , aber kürzlich habe ich festgestellt, dass ein Kollege die private Schnittstelle (ein Modul, das ich geschrieben habe) angepasst hat_

  3. Python ist eine flexible Sprache und die ungeschriebene Regel lautet „Konvention vor Konfiguration“

Erwartetes Phänomen

  1. Ich habe nach

    s Informationen gesucht und dachte, sie könnten meinen Anforderungen entsprechen, aber das war nicht der Fall (siehe unten)__all__

Frage

Also,

Es scheint überhaupt keinen Nutzen zu haben?__all__

Zugehörige Codes

Umwelt

大家讲道理大家讲道理2811 Tage vor800

Antworte allen(2)Ich werde antworten

  • 过去多啦不再A梦

    过去多啦不再A梦2017-05-18 10:52:54

    test.py 文件改为

    from base import *
    
    print a
    print b
    print c

    结果如下:

    ❯ python test.py                                                                                                                                                                                                                            ⏎
    1
    2
    Traceback (most recent call last):
      File "test.py", line 8, in <module>
        print c
    NameError: name 'c' is not defined

    Antwort
    0
  • 曾经蜡笔没有小新

    曾经蜡笔没有小新2017-05-18 10:52:54

    在Python中没有什么是真正私有的

    Antwort
    0
  • StornierenAntwort