เราสามารถใช้ ast.literal_eval() ที่นี่เพื่อประเมินสตริงเป็นนิพจน์หลาม มันประเมินโหนดนิพจน์หรือสตริงที่มีนิพจน์ Python อย่างปลอดภัย สตริงหรือโหนดที่ระบุอาจประกอบด้วยโครงสร้างตามตัวอักษรของ Python ต่อไปนี้เท่านั้น:สตริง ตัวเลข ทูเพิล รายการ dicts บูลีน และไม่มี ตัวอย่างเช่น:
s = "{'baz' : 'lol', 'foo' : 'bar'}" import ast s = ast.literal_eval(s) print s['foo'], s['baz']
สิ่งนี้จะให้ผลลัพธ์แก่เรา:
bar lol
พจนานุกรมยังสามารถมองว่าเป็นสตริง JSON ดังนั้นเราจึงสามารถใช้โมดูล json เพื่อแปลงสตริงเป็น dict ได้เช่นกัน ตัวอย่างเช่น
>>> import json >>> x = json.loads("{'foo' : 'bar', 'hello' : 'world'}") >>> type(x) <type 'dict'>