当我运行我的python脚本时,我收到以下警告
DeprecationWarning: the sets module is deprecated
我该如何解决这个问题?
答案 0 :(得分:35)
停止使用sets
模块,或切换到不推荐使用的旧版python。
根据pep-004,自{v2.6}起,sets
已弃用,取而代之的是内置set
and frozenset
types。
答案 1 :(得分:25)
历史:
在Python 2.3之前:没有设置功能
Python 2.3:sets
模块到达了
Python 2.4:引入了set
和frozenset
内置函数
Python 2.6:sets
模块已弃用
您应该将代码更改为使用set
而不是sets.Set
。
如果您仍希望能够支持使用Python 2.3,可以在脚本开头执行此操作:
try:
set
except NameError:
from sets import Set as set
答案 2 :(得分:5)
如果你想修复它,James绝对有正确的答案,但是如果你想关闭弃用警告,你可以像这样运行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)
答案 3 :(得分:4)
答案 4 :(得分:2)
您无需导入sets
模块即可使用它们,它们位于内置命名空间中。