空集文字?

|
[]
=空
list
()
=空
tuple
{}
=空
dict
空的ѭ6是否有类似的符号? 还是我必须写
set()
?     
已邀请:
不,空集没有文字语法。您必须写
set()
。     
只是为了扩展公认的答案: 从版本
2.7
3.1
起,python以用法
{1,2,3}
的形式获得了
set
文字
{}
,但
{}
本身仍用于空字典。 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     
一定要用ѭ7来创建一个空集。 但是,如果您想打动人们,请告诉他们您可以使用文字和
*
(Python> = 3.5(请参阅PEP 448))创建空集,方法是:
>>> s = {*()}  # or {*{}} or {*[]}
>>> print(s)
set()
这基本上是20英镑的一种更简洁的方法,但是不要这样做。     
这取决于您是否要使用文字进行比较或赋值。 如果要将现有集设为空,则可以使用
.clear()
方法,尤其是在避免创建新对象的情况下。如果要进行比较,请使用
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为U + 03D5)并代替使用它。     
是。适用于非空dict / set的相同表示法适用于空dict / set。 注意非空-5ѭ和
set
文字之间的区别:
{1: \'a\', 2: \'b\', 3: \'c\'}
-内部的许多键值对构成
dict
{\'aaa\', \'bbb\', \'ccc\'}
-内部的元组构成
set
所以:
{}
==零个键值对==空
dict
{*()}
==值的空元组==ѭ6empty的空 但是,事实是您可以做到,但这并不意味着您应该这样做。除非您有很强的理由,否则最好显式构造一个空集,例如:
a = set()
注意:正如评论中注意到的那样,
{()}
不是空集。它是一个包含1个元素的集合:空元组。     

要回复问题请先登录注册