2013-02-13 54 views
3

當我嘗試使用集合時,它顯示沒有任何命名集合。在python中導入集合

from sets import set 

> ImportError: cannot import name set 

我該如何解決?

回答

10

你不需要需要來導入sets module;套現在建成。只需使用內置set() type代替:

>>> set() 
set([]) 

可以使用{1, 2, 3}設置文本語法太:

>>> {1, 2, 3} 
set([1, 2, 3]) 

。如果你想使用更慢的sets模塊,對象被稱爲Set與資本S

>>> from sets import Set 

但請注意,該模塊已被棄用;使用它不會在內置類型上添加任何內容。該模塊已完全在Python 3中刪除。

+0

@martijin pieters:非常感謝!!它的工作! – user2059594 2013-02-13 13:55:19

+0

設置字面值是在python2.7中引入的,對嗎? – mgilson 2013-02-13 13:57:33

+1

@mgilson:正確,它只適用於非空集。空的'{}'語法創建一個'dict'代替。 – 2013-02-13 14:00:07

0

使用Set而不是set,因爲它的關鍵字。需要

from sets import Set 
0

set資本化:

from sets import Set 

但是從Python 2.7版上,set是內置的,並使用sets#Set實際上比慢得多內置set

例如,編碼挑戰我最近評估了,做了很多的dictset的小詞的查詢需要〜3秒與sets#Set但〜1.8秒帶有內置set運行。這是一個重大的差異。