[]
= vide list
()
= vide Tuple
{}
= vide dict
Existe-t-il une notation similaire pour un set
vide? Ou dois-je écrire set()
?
Non, il n'y a pas de syntaxe littérale pour l'ensemble vide. Vous devez écrire set()
.
Juste pour prolonger la réponse acceptée:
A partir de la version 2.7
et 3.1
python a set
littéral {}
sous la forme de son utilisation {1,2,3}
, mais {}
lui-même toujours utilisé pour le dict vide.
Python 2.7 (la première ligne n'est pas valide dans Python <2.7)
>>> {1,2,3}.__class__
<type 'set'>
>>> {}.__class__
<type 'dict'>
Python 3.x
>>> {1,4,5}.__class__
<class 'set'>
>>> {}.__class__
<type 'dict'>
Plus ici: https://docs.python.org/3/whatsnew/2.7.html#other-language-changes
Bien sûr, veuillez utiliser set()
pour créer un ensemble vide.
Mais si vous voulez impressionner les gens, dites-leur que vous pouvez créer un ensemble vide en utilisant des littéraux et *
avec Python> = 3.5 ( voir PEP 448 ) en Faire:
>>> s = {*()} # or {*{}} or {*[]}
>>> print(s)
set()
c'est fondamentalement une manière plus condensée de faire {_ for _ in ()}
, mais ne faites pas ceci.
Cela dépend si vous voulez le littéral pour une comparaison ou pour une affectation.
Si vous souhaitez vider un ensemble existant, vous pouvez utiliser la méthode .clear()
, en particulier si vous souhaitez éviter de créer un nouvel objet. Si vous voulez faire une comparaison, utilisez set()
ou vérifiez si la longueur est 0.
exemple:
#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
Ajoutant aux idées folles: avec Python 3 acceptant les identifiants Unicode, vous pouvez déclarer une variable ϕ = frozenset()
(est U + 03D5) et l’utiliser à la place.
si vous souhaitez initialiser un ensemble vide, appliquez le code ci-dessous. celui-ci fonctionne parfaitement pour moi en python 3:
object = set([])
object = object.union([1,2,3,4]) #set operation.