Как мне разобрать скрипт Python? - PullRequest
11 голосов
/ 15 мая 2009

Ранее сегодня я задал вопрос о том, как Python обрабатывает определенные виды циклов. Один из ответов содержал разобранные версии моих примеров.

Я бы хотел знать больше. Как я могу разобрать свой собственный код Python?

Ответы [ 3 ]

12 голосов
/ 15 мая 2009

Посмотрите на модуль dis :

def myfunc(alist):
    return len(alist)

>>> dis.dis(myfunc)
  2           0 LOAD_GLOBAL              0 (len)
              3 LOAD_FAST                0 (alist)
              6 CALL_FUNCTION            1
              9 RETURN_VALUE
2 голосов
/ 15 мая 2009

Помимо использования dis в качестве модуля, вы также можете запустить его как инструмент командной строки

Например, в Windows вы можете запустить:

c:\Python25\Lib\dis.py test.py

И он выведет разобранный результат на консоль.

2 голосов
/ 15 мая 2009

Используйте модуль dis из стандартной библиотеки Python (import dis, например, в интерактивном переводчике, затем dis.dis любую функцию, которая вас интересует! -).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...