у меня есть строка
data = "var1 = {'id': '12345', 'name': 'John White'}"
Есть ли способ в python извлечь var1 как переменную python. В частности, меня интересуют переменные словаря, чтобы я мог получить значение vars: id и name.python
у меня есть строка
data = "var1 = {'id': '12345', 'name': 'John White'}"
Есть ли способ в python извлечь var1 как переменную python. В частности, меня интересуют переменные словаря, чтобы я мог получить значение vars: id и name.python
exec("var1 = {'id': '12345', 'name': 'John White'}")
02.02.2016 Это функциональность, предоставляемая exec
.
>>> my_scope = {}
>>> data = "var1 = {'id': '12345', 'name': 'John White'}"
>>> exec(data, my_scope)
>>> my_scope['var1']
{'id': '12345', 'name': 'John White'}
Вы можете разделить строку с помощью =
и оценить словарь с помощью функции ast.literal_eval
:
>>> import ast
>>> ast.literal_eval(ata.split('=')[1].strip())
{'id': '12345', 'name': 'John White'}
exec
? 02.02.2016exec
— это встроенная функция для динамического выполнения кода, о ней особо нечего сказать, кроме того, что уже задокументировано. 02.02.2016