Когда я запускаю свой python script, я получаю следующее предупреждение
DeprecationWarning: the sets module is deprecated
Как это исправить?
Когда я запускаю свой python script, я получаю следующее предупреждение
DeprecationWarning: the sets module is deprecated
Как это исправить?
Прекратите использование модуля sets или переключитесь на более старую версию python, где она не устарела.
Согласно pep-004, sets устарел от версии 2.6, заменен встроенным set и frozenset типы.
История:
До Python 2.3: нет установленной функции
Добавлен модуль Python 2.3: sets
Python 2.4: set и frozenset встроенные встраиваемые
Python 2.6: sets модуль устарел
Вы должны изменить свой код, чтобы использовать set вместо sets.Set.
Если вы все еще хотите поддерживать Python 2.3, вы можете сделать это в начале вашего script:
try:
set
except NameError:
from sets import Set as set
Если вы хотите исправить ошибку, у Джеймса определенно есть правильный ответ, но если вы хотите просто отключить предупреждения об устаревании, вы можете запустить python следующим образом:
$ python -Wignore::DeprecationWarning
Python 2.6.2 (r262:71600, Sep 20 2009, 20:47:22)
[GCC 4.2.1 (Apple Inc. build 5646)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import sets
>>>
(От: http://puzzling.org/logs/thoughts/2009/May/3/python26-deprecation-warning)
Вы также можете игнорировать его программно:
import warnings
warnings.simplefilter("ignore", DeprecationWarning)
Используйте builting set вместо импорта модулей модулей
Из документация:
Модуль наборов устарел; его лучше использовать встроенный набор и frozenset.
Вам не нужно импортировать модуль sets, чтобы использовать их, они находятся во встроенном пространстве имен.