Spezielle Bezeichner (Identifier)           (C) 2017-2020 T.Birnthaler OSTC GmbH
=================================

Doku --> docs.python.org/dev/peps/pep-0008
         docs.python.org/3/reference/lexical_analysis.html#identifiers-and-keywords
         www.pep8.org

Folgende Namenskonventionen für Bezeichner (Identifier) gelten in Python:

+----------+-------------------------------------------------------------------+
| Name     | Bedeutung                                                         |
+----------+-------------------------------------------------------------------+
| __*__    | INTERNE Namen (reserviert für Python selbst)                      |
| __*      | Private Namen von Klassen (mangled --> _CLASS__*)                 |
| _*       | Protected Namen von Klassen (für Vererbung)                       |
|          | (von "from MODULE import *" nicht importiert)                     |
+----------+-------------------------------------------------------------------+
| *_       | Schlüsselworte als Bezeichner (z.B. "if_")                        |
| _        | Im interaktiven Interpreter: Ergebnis der letzten Auswertung      |
|          | Temporäre Variable in Schleifen (for _ in ...)                    |
|          | "Wegwerfvariable" (z.B. *_ in Parameterleiste von Funktion)       |
|          | Internationalisierung (i18n, gettext)                             |
+----------+-------------------------------------------------------------------+
| self     | Objekt in normalen Methoden von Klassen                           |
| other    | 2. Objekt in normalen 2-wertigen Methoden von Klassen             |
| cls      | Klasse in Klassen-Methoden von Klassen                            |
| *args    | Positionsparameter-Sammler in "variadischen" Funktionen           |
| **kwargs | Keywordparameter-Sammler in "variadischen" Funktionen             |
+----------+------------------------------------------------------+------------+
| NAME     | Konstante       (nur GROSSb., Unterstrich, Ziffern)  | Subst./Adj |
| Name     | Klassenname     (CamelCase)                          | Subst.     |
| Name     | Exceptionklasse (CamelCase)                          | Subst.     |
| name     | Modulname       (kleinb., KEIN Unterstrich, Ziffern) | Subst.     |
| name     | Variablename    (kleinb., Unterstr., Zif.)           | Subst./Adj |
| name     | Funktionsname   (kleinb., Unterstr., Zif.)           | Verb       |
| name     | Objektname      (kleinb., Unterstr., Zif.)           | Subst./Adj |
+----------+------------------------------------------------------+------------+

Qualifizierte Namen werden durch "." getrennt (der "." wird beim Zugriff auf
das Dateisystem in den jeweiligen Verz.-Trenner "\" oder "/" umgesetzt).

  MODUL.VARIABLE
  MODUL.FUNKTION()
  PACKAGE.SUBMODUL.VARIABLE
  PACKAGE.SUBMODUL.FUNKTION()
  PFAD.ZU.MODUL.VARIABLE()
  PFAD.ZU.MODUL.FUNKTION()


Spezielle Attribute
-------------------
Spezielle read-only Attribute, werden teilweise von der built-in Funktion
"dict()" nicht aufgelistet.

+------------------+-----------------------------------------------------------+
| Attribut         | Beschreibung                                              |
+------------------+-----------------------------------------------------------+
| __doc__          | Dokumentationsstring ("Docstring")                        |
| __name__         | Name von Klasse/Funktion/Methode/Descriptor/Generator/... |
| __qualname__     | Qualifizierter Name (inkl. Modulname)                     |
| __module__       | Modul in dem Name definiert ist                           |
+------------------+-----------------------------------------------------------+
| __code__         | Codeobjekt einer Funktion                                 |
| __defaults__     | Tuple mit Defaultwerten für Position-Parameter von Funk.  |
| __kwdefaults__   | Dictionary mit Defaultwerten für Keyword-Parameter von F. |
| __annotations__  | Dictionary mit "Annotations" für Param. + Rückgabewert    |
| __closure__      | Bindungen freier Variablen an Werte                       |
+------------------+-----------------------------------------------------------+
| __bases__        | Tupel der Basisklassen eines Klassenobjekts               |
| __mro__          | Tupel der Basisklassen für Methodenauflösung (linear)     |
| mro()            | Reihenfolge der Methodenauflösung                         |
| __subclasses__() | Liste schwacher Referenzen zu direkten Unterklassen       |
+------------------+-----------------------------------------------------------+
| __class__        | Klasse zu der eine Instanz gehört                         |
| __dict__         | Speicher für dynamische Objektattribute (Name + Wert)     |
| __slots__        | Speicher für statische Objektattribute (Name + Wert)      |
+------------------+-----------------------------------------------------------+
| __globals__      | Referenz zu Dictionary mit globalen Variablen             |
+------------------+-----------------------------------------------------------+


Spezielle Methoden