Вирішено: різниця послідовних чисел python

Основна проблема, пов’язана з різницею послідовних чисел Python, полягає в тому, що різниця між двома послідовними числами не завжди однакова. Наприклад, якщо у вас є список чисел [1, 2, 3], різниця між 1 і 2 дорівнює 1, а різниця між 2 і 3 становить лише 0.5. Це може викликати плутанину під час спроби обчислити різницю в значеннях або під час використання алгоритмів, які покладаються на постійний розмір кроку.

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))

# Рядок 1: цей рядок визначає функцію під назвою consecutive_difference, яка приймає один аргумент, nums.
# Рядок 2: цей рядок створює порожній список під назвою diff.
# Рядок 3: цей рядок є циклом for, який повторює довжину nums мінус один.
# Рядок 4: цей рядок додає абсолютне значення різниці між кожним елементом у числах до списку відмінностей.
# Рядок 5: цей рядок повертає список відмінностей після того, як він був заповнений усіма відмінностями між послідовними елементами в nums.
# Рядок 8: цей рядок встановлює змінну під назвою nums, рівну списку, що містить 2, 4, 6 і 8.
# Рядок 9: цей рядок друкує результат виклику consecutive_difference для nums.

Знайти послідовні числа у списку в Python

Знайти послідовні числа у списку в Python порівняно легко. Найпростіший підхід — прокрутити список і порівняти кожен елемент із попереднім. Якщо різниця між двома елементами дорівнює 1, то вони є послідовними числами.

Ось приклад того, як це можна зробити:

numbers = [1,2,3,4,5,6] # Список чисел
consecutive_numbers = [] # Список для зберігання послідовних чисел
for i in range(len(numbers)-1): # Перегляд списку
if (numbers[i+1] – numbers[i]) == 1: # Перевірити, чи різниця між двома елементами дорівнює 1
consecutive_numbers.append(numbers[i]) # Додати елемент до списку послідовних чисел
consecutive_numbers.append(numbers[i+1]) # Додати наступний елемент до списку послідовних чисел
print(consecutive_numbers) # Вивести список послідовних чисел

Отримайте різницю між послідовними числами в списку

У Python ви можете отримати різницю між послідовними числами в списку за допомогою функції zip(). Функція zip() приймає два або більше ітераторів і повертає ітератор кортежів. Перший елемент у кожному пройденому ітераторі об’єднується разом, потім другий елемент у кожному пройденому ітераторі об’єднується разом і так далі. Щоб отримати різницю між послідовними числами в списку, ви можете використовувати zip(), щоб поєднати кожне число з його попередником, а потім відняти їх, щоб отримати різницю. Наприклад:

номер_списку = [1, 2, 3, 4]
відмінності = [y – x для x, y в zip(list_numbers[:-1], list_numbers[1:])]
print(differences) # Вихід: [1, 1, 1]

Схожі повідомлення:

Залишити коментар