Найти - Пользователи
Полная версия: как перевести строку в операцию
Начало » Python для новичков » как перевести строку в операцию
1
nethere
Например,
str=“a+b”
и требуется перевести это в операцию a+b
В общем, подскажите пожалуйста как это реализовать
fata1ex
eval

Так лучше не делать.
vault
А вообще можно сделать синтаксический анализ, если операции конкретные.
dimy44
А чем eval плох-то в данном случае?
>>> x = '2 + 3'
>>> eval(x)
5
>>>
fata1ex
dimy44, потому что это “Например”. В этом случае не плох, а в общем случае им лучше не пользоваться, так как есть гораздо более приятные вещи.
odnochlen
dimy44
А чем eval плох-то в данном случае?
Тем, что
- уязвимость - инъекция кода
- малопонятные баги
dimy44
хм, допустим, хотя я такого мнения, что если по-уму применять, то оправдано, но, тогда и вы только лишь раскритиковали, а как нужно делать так толком и не показали на примере…
py.user.next
dip3. eval
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB