#python #python-2.7 #pyqt4 #standard-library
#python #python-2.7 #pyqt4 #стандартная библиотека
Вопрос:
Получается, что PyQt переопределяет функцию, hex()
что, к сожалению, делает стандартную библиотеку python hex()
непригодной для использования. Я работаю над крупным программным проектом, и он был настроен с помощью * imports:
from PyQt4.QtCore import *
from PyQt4.QtGui import *
…etc
Мне нужна стандартная hex()
функция python, есть ли какой-нибудь способ для меня сослаться на нее? Я думаю о stdlib.hex()
или что-то в этом роде?
В настоящее время мой уродливый обходной путь:
pyHex = hex
from PyQt4.QtCore import *
from PyQt4.QtGui import *
hex = pyHex
и я бы действительно предпочел не делать этого.
Спасибо.
Комментарии:
1. Я думаю, это одна из причин, по которой импорт * называется плохой практикой
2. Я согласен — к сожалению, я не единственный, кто работает над этой кодовой базой, и импорт * был выполнен задолго до того, как я даже увидел код. Итак, теперь мне нужен обходной путь.
Ответ №1:
from __builtin__ import hex
Используйте __builtin__
модуль.
Комментарии:
1. Обратите внимание, что в Python 3
__builtin__
был переименован вbuiltins
.2. Если операционной системе необходимо использовать КАК QT hex, так и Python hex, то вместо этого они могут захотеть сделать это: из _builtin_ импортировать hex как _hex