Guest User

Стружка-код unfucker.py

a guest
Nov 6th, 2026
3
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.98 KB | Source Code | 0 0
  1. import ast
  2.  
  3. # Мы не хотим, чтобы вызов input() сработал
  4. # и заставил программу зависнуть, разрешаем только chr
  5. # которым делаются константы
  6. ENV = {"__builtins__": {}, "chr": chr}
  7.  
  8. class Yo(ast.NodeTransformer):
  9. def visit(self, node):
  10. if isinstance(node,ast.expr): # проверяем, что узел - выражение
  11. try:
  12. # пытаемся вычислить узел целиком
  13. value = eval(compile(ast.Expression(node),"<x>","eval"), ENV)
  14. const_node = ast.copy_location(ast.Constant(value), node)
  15. compile(ast.Expression(const_node),"<x>","eval")
  16. return const_node
  17. except Exception:
  18. pass
  19. return super().generic_visit(node)
  20.  
  21. tree = Yo().visit(ast.parse(open("pyf_cked.py").read()))
  22. ast.fix_missing_locations(tree)
  23. print(ast.unparse(tree))
  24.  
Add Comment
Please, Sign In to add comment