- Joined
- Jan 8, 2019
- Messages
- 56,623
- Solutions
- 2
- Reputation
- 32
- Reaction score
- 100,456
- Points
- 2,313
- Credits
- 32,750
6 Years of Service
76%

The most reliable python obfuscator in the world.
Features
Rename symbol names, includes variables, functions, classes, arguments, class private methods. The name replacer avoids a 1:1 mapping of cleartext names to obfuscated names, the same name may be converted to several different names within different scopes.
Remove documentation strings.
Remove comments.
Python 3.3 - 3.7 are supported.
Unsupported python language features
Functions that access runtime namespace ( exec, dir, locals, globals ) may go wrong because of accessing objects that has been renamed.
Recommendations to achieve best results
Define export list (a variable named all) for each module.
Use positional arguments as much as possible.
Add double underscore prefix (e.g. __private) to class private attributes/methods.
Module level names
Every name except the names listed in module variable all are all considered private and will be renamed. If all is not defined, the set of private names includes all names found in the module’s namespace which begin with underscore character ('_').
It's safe to rename function parameters?
If you open options for rename parameters, you need to make sure that do not use them as keyword arguments in function call.
To see this hidden content, you must like this content.