Gibt es eine vollständige Liste von eingebauten Funktionen, die nicht mit Schlüsselwortargument aufgerufen werden können?

8

In den Antworten erwähnte Personen a1 , a2 das

  

Aufgrund der Art und Weise, wie die Python-C-Level-APIs entwickelt wurden, ist eine Menge eingebaut   Funktionen und Methoden haben keine Namen für ihre Argumente.

Ich fand es wirklich nervig, weil ich es nicht sehen kann, indem ich auf das Dokument schaue. Zum Beispiel eval

  

eval (Ausdruck, globale = Keine, lokale = Keine)

Dann habe ich diese Codezeile geschrieben

%Vor%

und habe TypeError: eval() takes no keyword arguments . Gibt es eine vollständige Liste von Funktionen dieser Art? Woher weiß ich, ob eine Funktion Schlüsselwortargumente haben darf?

    
laike9m 14.04.2016, 08:26
quelle

1 Antwort

4

In Python 3.5 können Sie die __text_signature__ der eingebauten Funktion überprüfen:

%Vor%

oder

%Vor%

( x kann nicht als Schlüsselwortargument verwendet werden)

/ bedeutet, dass die folgenden Argumente als Schlüsselwortargumente verwendet werden können. C.f.

%Vor%

Natürlich gibt es auch in 3.5 Bugs:

%Vor%

obwohl laut Problem 26729 im Python-Bug-Tracker , sollte / nach dem iterable als sein iterable kann nicht als Schlüsselwort verwendet werden.

Leider ist diese Information in der Python-Dokumentation selbst noch nicht verfügbar.

    
Antti Haapala 14.04.2016, 08:45
quelle

Tags und Links