Ich bin relativ neu in Python.Python: Verwandle einen String in eine Variable und ihren Wert
Das Programm, das ich schreibe liest Zeile für Zeile eine XML-Datei mit einer While-Schleife. Die gelesenen Daten sind so aufgeteilt, dass die Information, die ich bekomme, etwa lautet:
datas = ['Name = "Datum"', 'Tag = "0x03442333"', 'Level = "Erfassung"', 'Typ = " String "']
-Innerhalb meines Programms möchte ich einigen Variablen, die genau wie das Wort vor dem = -Zeichen benannt sind, die Informationen nach dem = -Zeichen in den vorherigen Strings zuweisen. Und dann werde ich sie als Attribute für eine Klasse einführen (das bereits funktioniert) - Was ich getan habe, bis der Moment ist:
Name = ''
Tag = ''
Level = ''
Type = ''
for i in datas:
exec(i)
-IT fein auf diese Weise funktioniert. Ich möchte jedoch nicht die Exec-Funktion verwenden. Gibt es einen anderen Weg, das zu tun?
Danke
Diejenigen, die sich wundern, was so schlecht ist mit 'exec' oder' eval', siehe [Eval ist wirklich gefährlich] (http://nedbatchelder.com/blog/201206/eval_really_is_dangerous.html) von SO Veteran Ned Batchelder . –