Ошибка Python при использовании MysqlDb - модуль наборов удерживается от использования

Я в настоящее время получаю предупреждение каждый раз, когда я запускаю скрипт 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

6
задан Tom 22 November 2010 в 04:28
поделиться

3 ответа

Сделайте это до импорта модуля mysql

import warnings
warnings.filterwarnings(action="ignore", message='the sets module is deprecated')
import sets
6
ответ дан 17 December 2019 в 00:08
поделиться

Вы можете игнорировать предупреждение, используя модуль warnings или аргумент -W для Python. Не игнорируйте все DeprecationWarnings , но только из MySQLdb :)

1
ответ дан 17 December 2019 в 00:08
поделиться

Все это означает, что модуль sets (точнее, часть неизменяемого набора) устарел, и вы должны использовать его замену, set. Набор встроен, поэтому импорт не требуется.

Если вам нужен неизменяемый набор, подойдет frozenset () .

0
ответ дан 17 December 2019 в 00:08
поделиться
Другие вопросы по тегам:

Похожие вопросы: