Résolu : différence entre les nombres consécutifs en python

Le principal problème lié à la différence entre les nombres consécutifs Python est que la différence entre deux nombres consécutifs n'est pas toujours la même. Par exemple, si vous avez une liste de nombres [1, 2, 3], la différence entre 1 et 2 est de 1, mais la différence entre 2 et 3 n'est que de 0.5. Cela peut être source de confusion lorsque vous essayez de calculer des différences de valeurs ou lorsque vous utilisez des algorithmes qui reposent sur une taille de pas constante.

def consecutive_difference(nums): 
    diff = [] 
    for i in range(len(nums)-1): 
        diff.append(abs(nums[i] - nums[i+1])) 
    return diff 
  
# Driver code 
nums = [2, 4, 6, 8] 
print(consecutive_difference(nums))

# Ligne 1 : Cette ligne définit une fonction appelée consécutive_difference qui prend un argument, nums.
# Ligne 2 : Cette ligne crée une liste vide appelée diff.
# Ligne 3 : Cette ligne est une boucle for qui parcourt la longueur des nombres moins un.
# Ligne 4 : cette ligne ajoute la valeur absolue de la différence entre chaque élément en nombres à la liste des différences.
# Ligne 5 : Cette ligne renvoie la liste des différences après qu'elle a été remplie avec toutes les différences entre les éléments consécutifs en nombres.
# Ligne 8 : Cette ligne définit une variable appelée nums égale à une liste contenant 2, 4, 6 et 8.
# Ligne 9 : cette ligne imprime le résultat de l'appel de la différence_consécutive sur les nombres.

Trouver des nombres consécutifs dans une liste en Python

Trouver des nombres consécutifs dans une liste en Python est relativement facile. L'approche la plus simple consiste à parcourir la liste et à comparer chaque élément avec celui qui le précède. Si la différence entre deux éléments est 1, alors ce sont des nombres consécutifs.

Voici un exemple de la façon dont cela peut être fait :

nombres = [1,2,3,4,5,6] # Liste de nombres
nombres_consécutifs = [] # Liste pour stocker des nombres consécutifs
for i in range(len(numbers)-1): # Boucle dans la liste
if (numbers[i+1] – numbers[i]) == 1: # Vérifie si la différence entre deux éléments est 1
nombres_consécutifs.append(nombres[i]) # Ajoute un élément à la liste des nombres consécutifs
nombres_consécutifs.append(nombres[i+1]) # Ajoute l'élément suivant à la liste des nombres consécutifs
print(consecutive_numbers) # Affiche la liste des numéros consécutifs

Obtenir la différence entre des nombres consécutifs dans une liste

En Python, vous pouvez obtenir la différence entre des nombres consécutifs dans une liste en utilisant la fonction zip(). La fonction zip() prend au moins deux itérables et renvoie un itérateur de tuples. Le premier élément de chaque itérable passé est apparié, puis le deuxième élément de chaque itérable passé est apparié, et ainsi de suite. Pour obtenir la différence entre des nombres consécutifs dans une liste, vous pouvez utiliser zip() pour associer chaque nombre à son prédécesseur, puis les soustraire pour obtenir la différence. Par example:

liste_nombres = [1, 2, 3, 4]
différences = [y – x pour x, y dans zip(list_numbers[:-1], list_numbers[1:])]
print(différences) # Sortie : [1, 1, 1]

Articles connexes

Laisser un commentaire