import ast
x=ast.literal_eval('0,1,2')
print(x)
# (0, 1, 2)
ast.literal_eval
похож на eval
, но полностью безопасен, так как ограничивает строку литералами, такими как строки, числа, кортежи, списки, слова, логические значения и None
.
Другой альтернативой, еще не упомянутой, является использование map
:
x=map(int,'0,1,2'.split(','))