12 votes

Comment désassembler un script Python ?

Plus tôt dans la journée, j'ai a posé une question sur la façon dont Python gère certains types de boucles. L'une des réponses contenait des versions désassemblées de mes exemples.

J'aimerais en savoir plus. Comment puis-je désassembler mon propre code Python ?

13voto

Jason Baker Points 56682

Regardez le dis module :

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

3voto

kcwu Points 2687

En plus d'utiliser dis en tant que module, vous pouvez également l'exécuter comme outil de ligne de commande

Par exemple, sous Windows, vous pouvez exécuter :

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

Et le résultat désassemblé sera affiché dans la console.

2voto

Alex Martelli Points 330805

Utilisez le dis de la bibliothèque standard de Python ( import dis par exemple dans un interpréteur interactif, alors dis.dis toute fonction qui vous intéresse !-).

0voto

Randolpho Points 36512

Voici un bon tutoriel pour vous. Et vous pouvez le faire en python !

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X