[]
=空list
()
=空tuple
{}
=空dict
空set
有类似的符号吗?或者我必须写set()
?
不,空集没有文字语法。你必须写set()
。
只是为了扩展接受的答案:
从版本2.7
和3.1
python得到set
文字{}
使用{1,2,3}
形式,但{}
本身仍然用于空dict。
Python 2.7(第一行在Python <2.7中无效)
>>> {1,2,3}.__class__
<type 'set'>
>>> {}.__class__
<type 'dict'>
Python等
>>> {1,4,5}.__class__
<class 'set'>
>>> {}.__class__
<type 'dict'>
更多这里:https://docs.python.org/3/whatsnew/2.7.html#other-language-changes
无论如何,请使用set()
创建一个空集。
但是,如果你想给人留下深刻印象,告诉他们你可以使用文字和*
用Python> = 3.5(see PEP 448)创建一个空集:
>>> s = {*()} # or {*{}} or {*[]}
>>> print(s)
set()
这基本上是一种更加浓缩的做{_ for _ in ()}
的方式,但是,不要这样做。
这取决于您是希望文字进行比较还是分配。
如果要将现有集合设置为空,则可以使用.clear()
metod,尤其是在您要避免创建新对象时。如果要进行比较,请使用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接受unicode标识符,您可以声明变量ϕ = frozenset()
(φ是U + 03D5)并使用它代替。