空集字面?

[] =空list

() =空tuple

{} =空dict

是否有类似的表示空set ? 或者我必须写set()

不,空集没有字面语法。 你必须写set()

只是为了扩大接受的答案:

从版本2.73.1 Python已经以用法{1,2,3}forms得到了set {} {1,2,3} ,但是{}本身仍然用于空字典。

Python 2.7(Python的第一行无效<2.7)

 >>> {1,2,3}.__class__ <type 'set'> >>> {}.__class__ <type 'dict'> 

Python 3.x

 >>> {1,4,5}.__class__ <class 'set'> >>> {}.__class__ <type 'dict'> 

更多在这里: https : //docs.python.org/3/whatsnew/2.7.html#other-language-changes

这取决于你是想要比较文字还是赋值。

如果你想使现有的集合为空,你可以使用.clear() metod,特别是如果你想避免创build一个新的对象。 如果要进行比较,请使用set()或检查长度是否为0。

例:

 #create a new set a=set([1,2,3,'foo','bar']) #or, using a literal: a={1,2,3,'foo','bar'} #create an empty set a=set() #or, use the clear method a.clear() #comparison to a new blank set if a==set(): #do something #length-checking comparison if len(a)==0: #do something 

如果你想初始化空集,然后应用下面的代码。 这个在python 3中完全适合我:

 object = set([]) object = object.union([1,2,3,4]) #set operation. 

添加疯狂的想法:Python 3接受unicode标识符,你可以声明一个variablesϕ = frozenset() (φ是U + 03D5),并使用它。

通过一切手段, 请使用 set()创build一个空集。

但是,如果你想给人留下深刻的印象,告诉他们你可以使用Python> = 3.5的文字( 参见PEP 448 )创build一个空集:

 >>> s = {*()} # or {*{}} or {*[]} >>> print(s) set() 

这基本上是{_ for _ in ()}更简洁的方式,但是不要这样做。

您可以使用以下function:

 >>> s1 = () >>> print(s1.__len__()) 

将导致:0 – 该集是空的

像这样使用a = set

要么

a = {0,1}