import types def patch_code(func, remove_const): co = func.__code__ new_consts = tuple(const for const in co.co_consts if const != remove_const) code2 = types.CodeType( co.co_argcount, co.co_kwonlyargcount, co.co_nlocals, co.co_stacksize, co.co_flags, co.co_code, new_consts, co.co_names, co.co_varnames, co.co_filename, co.co_name, co.co_firstlineno, co.co_lnotab, co.co_freevars, co.co_cellvars) func.__code__ = code2 #f1, f2 = lambda: 1, lambda: 1.0 f1, f2 = lambda x: x in {1}, lambda x: x in {1.0} types.CodeType patch_code(f1, 1) patch_code(f2, 1.0) print("code is", f1.__code__ is f2.__code__) print("code ==", f1.__code__ == f2.__code__) print("consts", f1.__code__.co_consts, f2.__code__.co_consts) print("consts ==", f1.__code__.co_consts == f2.__code__.co_consts)