Blog • code, python

La fonction set en Python

La fonction native set() retourne un set en en créant un ou bien en transformant un autre objet Python en set si c'est possible.

Publié le 8 septembre 2023 4 min de lecture

La fonction native set() retourne un set en en créant un ou bien en transformant un autre objet Python en set si c'est possible. Les éléments du set sont entre les symboles {} et un set ne contient pas de doublons.

set([True, False, True])  # {True, False}
set([0, 1, 2])  # {0, 1, 2}
set([])  # set()

💡 Vous voulez en apprendre plus sur les fonctions comme set() ? J'ai écrit un article qui reprend toutes les fonctions natives en Python.

Quelle est la syntaxe de la fonction set ?

La syntaxe de la fonction set() en Python est :

set()
set(iterable)

Quels paramètres prend la fonction set ?

La fonction set() prend 0 ou 1 paramètre :

  • iterable (optionnel) : un itérable comme une liste, un set, un dictionnaire, un set, une string ou un autre type d'objet python sur lequel on peut boucler.

Quelle valeur renvoie la fonction set ?

La fonction set() retourne :

  • Le constructeur d'un nouveau set vide set() si aucun paramètre n'a été fourni
  • Un set qui reprend les éléments de l'iterable passé en paramètre sans doublons

Exemples de la fonction set avec des listes

set([True, True, True])  # {True}
set([])  # set()

Exemples de la fonction set avec des dictionnaires

set({'a': False, 'b': False, 'c': False})  # {'a', 'b', 'c'}
set({})  # set()

Exemples de la fonction set avec des tuples

set((False, True, True))  # {False, True}
set(())  # set()

Exemples de la fonction set avec des strings

set('123')  # {'1', '2', '3'}
set('')  # set()

Quelles sont les méthodes d'un set ?

Les objets de type set offrent plusieurs méthodes : add, clear, copy, difference, difference_update, discard, intersection, intersection_update, isdisjoint, issubset, issuperset, pop, remove, symmetric_difference, symmetric_difference_update, union ou encore update.

add

a = set([1, 2, 3])

a.add(4)

print(a)  # {1, 2, 3, 4}

clear

a = set([1, 2, 3])

a.clear()

print(a)  # set()

copy

a = set([1, 2, 3])

b = a.copy()

print(a, b)  # {1, 2, 3} {1, 2, 3}

difference

a = set([1, 2, 3])

b = set([2, 3, 4])

a.difference(b)  # {1}

difference_update

a = set([1, 2, 3])

b = set([2, 3, 4])

a.difference(b)  # {1}

print(a)  # {1}

discard

a = set([1, 2, 3])

a.discard(2)

print(a) # {1, 3}

intersection

a = set([1, 2, 3])

b = set([2, 3, 4])

a.intersection(b)  # {2, 3}

intersection_update

a = set([1, 2, 3])

b = set([2, 3, 4])

a.intersection_update(b)  # {2, 3}

print(a)  # {2, 3}

isdisjoint

a = set([1, 2, 3])

b = set([2, 3, 4])

a.isdisjoint(b)  # False

issubset

a = set([1, 2, 3])

b = set([2, 3, 4])

a.issubset(b)  # False

set([1, 2]).issubset(set([1, 2, 3, 4]))  # True

issuperset

a = set([1, 2, 3])

b = set([2, 3, 4])

a.issuperset(b)  # False

pop

a = set([1, 2, 3])

a.pop()

print(a) # {1, 2}

remove

a = set([1, 2, 3])

a.remove(3)

print(a) # {1, 2}

symmetric_difference

a = set([1, 2, 3])

b = set([2, 3, 4])

a.symmetric_difference(b)  # {1, 4}

symmetric_difference_update

a = set([1, 2, 3])

b = set([2, 3, 4])

a.symmetric_difference_update(b)  # {1, 4}

print(a)  # {1, 4}

union

a = set([1, 2, 3])

b = set([2, 3, 4])

a.union(b)  # {1, 2, 3, 4}

update

a = set([1, 2, 3])

a.update('a', 'b', 'c')

print(a)  # {1, 2, 3, 'a', 'b', 'c'}
En lien avec cet article

Cours Python débutant

Démarrez en Python à partir de zéro : variables, conditions, boucles, fonctions et structures de données. Chaque notion est suivie d'exercices corrigés automatiquement.

Bases du langageExercices corrigés4 projets progressifs
Voir le cours
Thomas Collart

Thomas Collart, développeur et formateur depuis plus de 20 ans. J'ai formé 3 700 étudiants à travers mes formations en ligne, cumule plus de 2 700 000 vues et 56 700 abonnés sur YouTube, TikTok et Instagram.