Heim > Backend-Entwicklung > Python-Tutorial > Wie kann ich eine String-Darstellung eines Wörterbuchs sicher in ein Python-Wörterbuch konvertieren?

Wie kann ich eine String-Darstellung eines Wörterbuchs sicher in ein Python-Wörterbuch konvertieren?

DDD
Freigeben: 2024-12-29 06:08:11
Original
796 Leute haben es durchsucht

How Can I Safely Convert a String Representation of a Dictionary to a Python Dictionary?

Konvertieren der Zeichenfolgendarstellung eines Wörterbuchs in ein Wörterbuch

Oft müssen wir möglicherweise eine Zeichenfolgendarstellung eines Wörterbuchs wie die angegebene konvertieren unten in ein tatsächliches Wörterbuch.

s = "{'muffin' : 'lolz', 'foo' : 'kitty'}"
Nach dem Login kopieren

Aus Sicherheitsgründen ist es vorzuziehen, die Verwendung von eval für solche Konvertierungen zu vermeiden. Hier sind einige sicherere Alternativen:

Verwendung von ast.literal_eval:

Pythons Ast-Modul bietet eine praktische Funktion namens literal_eval, die speziell für die sichere Auswertung von Ausdruckszeichenfolgen entwickelt wurde.

import ast
dict_from_string = ast.literal_eval("{'muffin' : 'lolz', 'foo' : 'kitty'}")
Nach dem Login kopieren

Diese Methode ermöglicht nur die Auswertung von Literalen und einfachen Ausdrücken Es ist viel sicherer als eval.

Vorteil von ast.literal_eval:

Im Gegensatz zu eval beschränkt ast.literal_eval die Auswertung auf einen begrenzten Satz von Python-Literalen, was potenziell verhindert Sicherheitsrisiken im Zusammenhang mit der Ausführung willkürlichen Codes.

Das obige ist der detaillierte Inhalt vonWie kann ich eine String-Darstellung eines Wörterbuchs sicher in ein Python-Wörterbuch konvertieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage