Уведомления

Группа в Telegram: @pythonsu

#1 Март 28, 2012 00:36:44

yegorov-p
От:
Зарегистрирован: 2009-10-11
Сообщения: 23
Репутация: +  0  -
Профиль   Отправить e-mail  

Возможно ли выполнить код, содержащийся в строке?

Добрый день

Возник такой теоретический вопрос, а можно ли сделать субж? Например, нечто вроде

a="len('asd')"
print someunknownfunction(a)
>>> 3
Смысл, надеюсь, понятен



Офлайн

#2 Март 28, 2012 01:49:48

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 10010
Репутация: +  857  -
Профиль   Отправить e-mail  

Возможно ли выполнить код, содержащийся в строке?

eval()

подмена кода может привести к выполнению чего угодно



Отредактировано py.user.next (Март 28, 2012 01:50:47)

Офлайн

#3 Март 28, 2012 09:32:53

cutwater
От:
Зарегистрирован: 2009-01-08
Сообщения: 444
Репутация: +  19  -
Профиль   Отправить e-mail  

Возможно ли выполнить код, содержащийся в строке?

yegorov-p
Смысл, надеюсь, понятен

Смысл то понятен, eval и exec существуют.
Однако велика пероятность того, что Вы пытаетесь решить таким хитрым методом задачу, которая решается более безопасно, проще и корректней. Поэтому если Вы хотите получить не только ответ на конкретный вопрос а и рекоммендацию, как решить вашу задачу правильно, попробуйте ее сформулировать. Возможно есть методы гумманней чем eval и exec, так как в большей части случаев их применение не оправдано.



Отредактировано cutwater (Март 28, 2012 09:33:47)

Офлайн

#4 Март 28, 2012 11:51:26

fata1ex
От:
Зарегистрирован: 2009-07-11
Сообщения: 732
Репутация: +  52  -
Профиль   Отправить e-mail  

Возможно ли выполнить код, содержащийся в строке?

Может ввести обязательный курс “Поиск в интернете” в начальной школе. Или сдавать экзамен перед получением доступа от провайдера. Страшно подумать, сколько времени понапрасну тратят люди.

Это я к чему:

- “execute python string”
- “execute string as code python”
- “run python string”
- “run string as code python”
- “выполнить строку питон|python”
- “выполнить строки с кодом питон|python”
- …

Любой из этих запросов в первой же ссылке даст ответ на заданный вопрос. Учитесь искать.



Отредактировано fata1ex (Март 28, 2012 14:39:45)

Офлайн

#5 Март 28, 2012 12:10:42

JOHN_16
От: Россия, Петропавловск-Камчатск
Зарегистрирован: 2010-03-22
Сообщения: 3292
Репутация: +  221  -
Профиль   Отправить e-mail  

Возможно ли выполнить код, содержащийся в строке?

fata1ex Билл Гейтс как то заикнулся о выдаче прав на пользование OS Windows ( по аналогии с водительскими правами). Но идея утопия. Ну а твоя мысль имеет смысл=)



_________________________________________________________________________________
полезный блог о python john16blog.blogspot.com

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version