Безопасный literal_eval с возможностью индексирования

Я ищу способ оценить синтаксис строк, который позволяет индексировать.

Пример:

string = '[1,2,3][0]'
foo = literal_eval( string )

В этом случае я хочу, чтобы foo было равно 1

ast literal_eval не поддерживает это, потому что

Он не способен оценивать произвольно сложные выражения, например, включающие операторы или индексацию.

Код сомнителен, так что я не могу использовать питонeval() функция.

Какие-нибудь мысли?

0 ответов

Другие вопросы по тегам