Я в настоящее время получаю предупреждение каждый раз, когда я запускаю скрипт Python, который использует MySQLdb:
/var/lib/python-support/python2.6/MySQLdb/__init__.py:34:
DeprecationWarning: the sets module is deprecated
from sets import ImmutableSet
Я не смешал бы с их lib, если это возможно. Я нахожусь на сервере Ubuntu. Кто-либо знает простой способ исправить то предупреждающее сообщение?
Спасибо
ОБНОВЛЕНИЕ: Зафиксированный это на основе предложений ниже и этой ссылки: https://bugzilla.redhat.com/show_bug.cgi? id=505611
import warnings
warnings.filterwarnings('ignore', '.*the sets module is deprecated.*',
DeprecationWarning, 'MySQLdb')
import MySQLdb
Сделайте это до импорта модуля mysql
import warnings
warnings.filterwarnings(action="ignore", message='the sets module is deprecated')
import sets
Вы можете игнорировать предупреждение, используя модуль warnings
или аргумент -W
для Python. Не игнорируйте все DeprecationWarnings
, но только из MySQLdb
:)
Все это означает, что модуль sets (точнее, часть неизменяемого набора) устарел, и вы должны использовать его замену, set. Набор встроен, поэтому импорт не требуется.
Если вам нужен неизменяемый набор, подойдет frozenset () .