0

Ich möchte reserviertes Schlüsselwort "von" als Name der Variablen verwenden.Wie reserviertes Schlüsselwort als Name der Variablen in Python verwenden?

Ich habe es in meinem Argumente Parser:

parser.add_argument("--from") 
args = parser.parse_args() 
print(args.from) 

aber das funktioniert nicht, weil "von" reserviert ist. Es ist wichtig, diesen Variablennamen zu haben, ich möchte keine Antworten wie "from_".

Gibt es eine Option?

+0

Sie möchten vielleicht erklären warum * * Sie denken, dass es wichtig ist, diesen Variablennamen zu haben. Ihr Code führt keine anderen aus, wenn die Variable den Namen "from_" hat, aber Sie könnten Ihren Code leichter lesen, ohne die erforderlichen Umgehungen. –

+0

** Disclaimer: ** Ich bin ** nicht ** ermutigen die folgende Methode, ich zeige nur die Möglichkeiten. In Ihrer Situation würde ich definitiv mit 'from_' als Variablennamen gehen. Ähnlich wie [diese Antworten] (https://stackoverflow.com/a/9108164/3767239) können Sie die Python - Quelle (den Quellcode des Compilers) ändern, um das reservierte Schlüsselwort 'from' in etwas anderes (z. B. Beispiel 'from_'). Dann können Sie die Quelle neu erstellen, um Ihren eigenen Python-Compiler zu erhalten, mit dem Sie 'from' als Variablennamen verwenden können. Bitte beachten Sie, dass dies aus vielen Gründen eine schreckliche Idee ist. –

Antwort

3

Sie können getattr() verwenden das Attribut zuzugreifen:

print(getattr(args, 'from')) 

jedoch in argparse können Sie die Befehlszeilenoption --fromohne haben zu haben, die die Attributfrom durch die dest option mit angeben ein alternativer zu verwendender Name:

parser.add_argument('--from', dest='from_') 

# ... 
args = parser.parse_args() 
print(args.from_) 
Verwandte Themen