Решено: 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: Този ред добавя абсолютната стойност на разликата между всеки елемент в nums към списъка с разлики.
# Ред 5: Този ред връща списъка с разлики, след като е бил попълнен с всички разлики между последователни елементи в nums.
# Ред 8: Този ред задава променлива, наречена nums, равна на списък, съдържащ 2, 4, 6 и 8.
# Ред 9: Този ред отпечатва резултата от извикването на consecutive_difference на nums.

Намерете последователни числа в списък в Python

Намирането на последователни числа в списък в Python е относително лесно. Най-простият подход е да преминете през списъка и да сравните всеки елемент с този преди него. Ако разликата между два елемента е 1, тогава те са последователни числа.

Ето пример как може да се направи това:

числа = [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(списъци_номера[:-1], списъци_номера[1:])]
print(differences) # Изход: [1, 1, 1]

Подобни публикации:

Оставете коментар