В Python есть несколько built-in functions. Возьмите, например, open
. Я могу запустить консоль Python и получить некоторую информацию о open
, выполнив следующие действия:Отменить перезапись Python Встроенный
>> open
>>(built-in function open)
Но если бы я сделать что-то вроде этого:
>> # I know it's bad practice to import all items from the namespace
>> from gzip import *
>> open
>>(function open at 0x26E88F0)
Оказывается, что для остальной части мой сеанс консоли, все вызовы функции open
не будут использовать встроенную функцию, кроме той, которая находится в модуле gzip
. Есть ли способ переопределить встроенную функцию в Python в исходное? Это легко, если у меня есть ссылка на нужную функцию, как показано ниже:
def MyOpen(path):
print('Trivial example')
open = MyOpen
Как получить ссылку для встроенных функций, как только эти ссылки были перезаписаны?