Archives dans janvier 2023

Programme Python pour vérifier si deux chaînes sont des anagrammes

Voici un exemple de programme Python qui vérifie si deux chaînes de caractères sont des anagrammes (c’est-à-dire si elles ont la même signification, mais peuvent être formées avec différentes combinaisons de lettres):

 

def is_anagram(string1, string2):
    # Créer des compteurs de caractères pour chaque chaîne
    char_count1 = {}
    char_count2 = {}

    # Remplir les compteurs de caractères
    for c in string1:
        if c in char_count1:
            char_count1[c] += 1
        else:
            char_count1[c] = 1
    for c in string2:
        if c in char_count2:
            char_count2[c] += 1
        else:
            char_count2[c] = 1

    # Vérifier si les compteurs de caractères sont égaux
    return char_count1 == char_count2

# Exemples d'utilisation de la fonction
print(is_anagram('abcdef', 'fedcba'))  # True
print(is_anagram('abcdef', 'abcdefg'))  # False
print(is_anagram('abcdef', 'abcdeg'))   # False

Ce programme crée des dictionnaires qui mappent chaque caractère de chaque chaîne à son nombre d’occurrences dans la chaîne. La fonction

is_anagram()

retourne

True

si ces dictionnaires sont égaux, et

False

sinon.

Programme Python pour parcourir deux listes en parallèle

Voici un exemple de programme Python qui parcourt deux listes en parallèle:

list1 = [1, 2, 3, 4]
list2 = ['a', 'b', 'c', 'd']

for x, y in zip(list1, list2):
    print(x, y)

La fonction

zip()

permet de combiner les éléments de deux listes en un tuple, et la boucle

for

permet de parcourir ces tuples.

Vous pouvez également utiliser la fonction

enumerate()

pour parcourir les deux listes en parallèle. Voici un exemple:

 

list1 = [1, 2, 3, 4]
list2 = ['a', 'b', 'c', 'd']

for i, (x, y) in enumerate(zip(list1, list2)):
    print(i, x, y)

 

Programme Python pour obtenir la date de création et de modification du fichier

Voici un exemple de programme Python qui peut être utilisé pour obtenir la date de création et de modification d’un fichier :

 

import os
import time

filename = 'example.txt'

# Obtenir la date de création du fichier
creation_time = os.path.getctime(filename)
print('Date de création :', time.ctime(creation_time))

# Obtenir la date de modification du fichier
modification_time = os.path.getmtime(filename)
print('Date de modification :', time.ctime(modification_time))

Ce programme utilise les fonctions

os.path.getctime

et

os.path.getmtime

pour obtenir respectivement la date de création et de modification du fichier

example.txt

. La fonction

time.ctime

est utilisée pour formater la date en une chaîne de caractères lisible par l’homme.

Notez que ces fonctions ne sont disponibles que sur certains systèmes d’exploitation. Si vous utilisez un autre système d’exploitation, vous devrez peut-être utiliser une autre méthode pour obtenir la date de création et de modification du fichier.

Programme Python pour obtenir le dernier élément de la liste

Voici comment obtenir le dernier élément d’une liste en utilisant Python :

last_element = my_list[-1]
try:
  last_element = my_list[-1]
except IndexError:
  print("La liste est vide")

my_list = [1, 2, 3, 4]

try:
  last_element = my_list[-1]
  print(f"Le dernier élément de la liste est {last_element}")
except IndexError:
  print("La liste est vide")

last_element = my_list.pop()
my_list = [1, 2, 3, 4]

try:
  last_element = my_list.pop()
  print(f"Le dernier élément de la liste est {last_element}")
except IndexError:
  print("La liste est vide")

Le symbole

-1

indique l’index du dernier élément de la liste. Si la liste est vide, cela lèvera une exception

IndexError

. Vous pouvez utiliser un bloc

try

except

pour gérer cette exception :

Vous pouvez également utiliser la méthode

pop()

de la classe

list

pour obtenir le dernier élément de la liste et le supprimer de la liste en même temps. Voici comment cela peut être fait : last_element = my_list.pop()

La méthode

pop()

retire l’élément à l’index spécifié de la liste et renvoie sa valeur. Si aucun index n’est spécifié, elle retire et renvoie le dernier élément de la liste. Si la liste est vide, cela lèvera une exception

IndexError

, que vous pouvez gérer en utilisant un bloc

try

except

.

Programme Python pour vérifier si une clé est déjà présente dans un dictionnaire

Voici comment vérifier si une clé est présente dans un dictionnaire en utilisant Python:

 

if key in my_dict:
  # la clé est présente dans le dictionnaire
else:
  # la clé n'est pas présente dans le dictionnaire
#ou
if my_dict.get(key) is not None:
  # la clé est présente dans le dictionnaire
else:
  # la clé n'est pas présente dans le dictionnaire

#ou 
if key in my_dict:
  # la clé est présente dans le dictionnaire
else:
  # la clé n'est pas présente dans le dictionnaire

Voici comment cela fonctionne: l’opérateur

in

vérifie si une valeur est présente dans un objet itérable, comme une liste ou un dictionnaire. Si la valeur est présente, l’opérateur renvoie

True

, sinon il renvoie

False

.

Vous pouvez également utiliser la méthode

get()

de la classe

dict

pour vérifier si une clé est présente dans un dictionnaire. La méthode

get()

renvoie la valeur associée à la clé si elle est présente dans le dictionnaire, ou

None

sinon. Voici comment cela peut être fait.

Vous pouvez également utiliser la méthode

in

de la classe

dict

pour vérifier si une clé est présente dans un dictionnaire. La méthode

in

renvoie

True

si la clé est présente dans le dictionnaire, et

False

sinon. Voici comment cela peut être fait :

Programme Python pour copier un fichier

Le module

shutil

(pour “Shell Utilities”) fournit une variété de fonctions pour travailler avec des fichiers et des dossiers, y compris la fonction

copy()

qui permet de copier un fichier d’un emplacement à un autre.

La fonction

copy()

prend en entrée les chemins d’accès des fichiers source et de destination, sous forme de chaînes de caractères. Si le fichier de destination existe déjà, il sera remplacé par la copie. Si le fichier de destination n’existe pas, il sera créé.

Voici comment utiliser la fonction

copy()

pour copier un fichier dans le même dossier :

 

import shutil

# Copie du fichier d'origine vers le fichier de destination (dans le même dossier)
shutil.copy(source_file, "./" + dest_file)
import shutil

# Copie du fichier d'origine vers le fichier de destination (dans le même dossier)
shutil.copy(source_file, "./" + dest_file)
import shutil

# Copie du dossier d'origine vers le dossier de destination
shutil.copytree(source_folder, dest_folder, recursive=True)

Vous pouvez également utiliser la fonction

copy()

pour copier des dossiers en utilisant le paramètre

dst

et en mettant

recursive=True

:

Cela copiera récursivement tout le contenu du dossier d’origine dans le dossier de destination. Si le dossier de destination n’existe pas, il sera créé. Si le dossier de destination existe déjà, les fichiers et dossiers de l’origine seront ajoutés à ceux existants.

Programme Python pour vérifier si une liste est vide

Voici comment cela fonctionne : la fonction booléenne

not

renvoie

True

si l’expression qui suit est

False

, et

False

si elle est

True

. En Python, une liste vide est considérée comme

False

, tandis qu’une liste non vide est considérée comme

True

.

 

if not my_list:
  # la liste est vide
else:
  # la liste n'est pas vide

Vous pouvez également utiliser l’instruction

if

suivie de la longueur de la liste, comme ceci :

 

if len(my_list) == 0:
  # la liste est vide
else:
  # la liste n'est pas vide

Ou encore, vous pouvez utiliser la méthode

isempty()

de la classe

list

, comme ceci:

 

if my_list.isempty():
  # la liste est vide
else:
  # la liste n'est pas vide

Cela fonctionne parce que la méthode

isempty()

renvoie

True

si la liste est vide et

False

sinon. Cette méthode est disponible à partir de Python 3.9. Si vous utilisez une version antérieure de Python, vous devrez utiliser l’une des deux premières approches.

 

Programme Python pour trier un dictionnaire par valeur

Voici comment on peut écrire un programme Python qui trie un dictionnaire par valeur en utilisant la fonction

sorted()

:

 

def trier_dictionnaire_par_valeur(mon_dictionnaire):
  # On trie le dictionnaire par valeur et on retourne la liste des tuples (clé, valeur) triée
  return sorted(mon_dictionnaire.items(), key=lambda x: x[1])

# Exemple d'utilisation
mon_dictionnaire = { "cle1": 3, "cle2": 1, "cle3": 2 }
trie = trier_dictionnaire_par_valeur(mon_dictionnaire)
print(trie)  # Affiche [("cle2", 1), ("cle3", 2), ("cle1", 3)]

Ce programme utilise la fonction

sorted()

qui prend en argument le dictionnaire et un paramètre

key

qui spécifie la fonction de tri à utiliser. On utilise ici une fonction lambda qui retourne la valeur de chaque tuple (clé, valeur). La fonction

sorted()

trie alors la liste de tuples en utilisant cette valeur comme clé de tri et retourne le résultat.

Note : si vous voulez trier le dictionnaire en ordre décroissant, il suffit de mettre

reverse=True

dans l’appel à la fonction

sorted()

.

Programme Python pour parcourir les dictionnaires à l’aide de la boucle for

Voici comment on peut écrire un programme Python qui parcourt un dictionnaire et affiche ses clés et valeurs à l’aide d’une boucle

for

:

 

def afficher_dictionnaire(mon_dictionnaire):
  # On parcourt le dictionnaire avec une boucle for
  for cle, valeur in mon_dictionnaire.items():
    # On affiche la clé et la valeur
    print("{} : {}".format(cle, valeur))

# Exemple d'utilisation
mon_dictionnaire = { "cle1": "valeur1", "cle2": "valeur2", "cle3": "valeur3" }
afficher_dictionnaire(mon_dictionnaire)

Ce programme utilise la méthode

items()

qui retourne un objet “view” contenant toutes les paires clé-valeur du dictionnaire. La boucle

for

parcourt cet objet et affecte les valeurs de la clé et de la valeur à des variables

cle

et

valeur

. On peut ensuite utiliser ces variables dans la boucle pour afficher la clé et la valeur de chaque itération.

Programme Python pour accéder à l’index d’une liste à l’aide de la boucle for

Voici comment on peut écrire un programme Python qui parcourt une liste en utilisant la boucle

for

et qui affiche l’index et la valeur de chaque élément de la liste :

 

ma_liste = [10, 20, 30, 40, 50]

# On parcourt la liste
for i, valeur in enumerate(ma_liste):
  # On affiche l'index et la valeur
  print("Index : {} / Valeur : {}".format(i, valeur))

# Output :
# Index : 0 / Valeur : 10
# Index : 1 / Valeur : 20
# Index : 2 / Valeur : 30
# Index : 3 / Valeur : 40
# Index : 4 / Valeur : 50

La fonction

enumerate()

permet de parcourir une liste tout en retournant à chaque itération l’index et la valeur de l’élément courant. Dans la boucle

for

, on utilise l’instruction

for i, valeur in enumerate(ma_liste)

pour parcourir la liste et récupérer à chaque itération l’index de l’élément courant dans la variable

i

et sa valeur dans la variable

valeur

.

Ainsi, à chaque itération de la boucle, l’index de l’élément courant est affiché ainsi que sa valeur.


1 2 3 4