Løst: python fortløpende tall forskjell mellom

Hovedproblemet knyttet til Python fortløpende tallforskjell mellom er at forskjellen mellom to fortløpende tall ikke alltid er den samme. For eksempel, hvis du har en liste med tall [1, 2, 3], er forskjellen mellom 1 og 2 1, men forskjellen mellom 2 og 3 er bare 0.5. Dette kan forårsake forvirring når du prøver å beregne forskjeller i verdier eller når du bruker algoritmer som er avhengige av en konstant trinnstørrelse.

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

# Linje 1: Denne linjen definerer en funksjon kalt consecutive_difference som tar inn ett argument, nums.
# Linje 2: Denne linjen lager en tom liste kalt diff.
# Linje 3: Denne linjen er en for-løkke som itererer gjennom lengden av nums minus en.
# Linje 4: Denne linjen legger til den absolutte verdien av differansen mellom hvert element i tall til diff-listen.
# Linje 5: Denne linjen returnerer diff-listen etter at den har blitt fylt ut med alle forskjellene mellom påfølgende elementer i tall.
# Linje 8: Denne linjen setter en variabel kalt nums lik en liste som inneholder 2, 4, 6 og 8.
# Linje 9: Denne linjen skriver ut resultatet av å ringe consecutive_difference på tall.

Finn fortløpende tall i en liste i Python

Å finne fortløpende tall i en liste i Python er relativt enkelt. Den enkleste tilnærmingen er å gå gjennom listen og sammenligne hvert element med det før det. Hvis forskjellen mellom to elementer er 1, er de fortløpende tall.

Her er et eksempel på hvordan dette kan gjøres:

tall = [1,2,3,4,5,6] # Liste over tall
consecutive_numbers = [] # Liste for å lagre fortløpende tall
for i in range(len(numbers)-1): # Sløyfe gjennom listen
if (tall[i+1] – tall[i]) == 1: # Sjekk om forskjellen mellom to elementer er 1
consecutive_numbers.append(numbers[i]) # Legg til element til listen over fortløpende tall
consecutive_numbers.append(numbers[i+1]) # Legg til neste element til listen over fortløpende tall
print(consecutive_numbers) # Skriv ut liste over fortløpende tall

Få forskjellen mellom fortløpende tall i en liste

I Python kan du få forskjellen mellom fortløpende tall i en liste ved å bruke zip()-funksjonen. Zip()-funksjonen tar to eller flere iterables og returnerer en iterator av tupler. Det første elementet i hver bestått iterable pares sammen, deretter pares det andre elementet i hver bestått iterable sammen, og så videre. For å få forskjellen mellom påfølgende tall i en liste, kan du bruke zip() til å pare opp hvert tall med forgjengeren og deretter trekke dem fra for å få forskjellen. For eksempel:

liste_tall = [1, 2, 3, 4]
forskjeller = [y – x for x, y i zip(listetall[:-1], listetall[1:])]
print (forskjeller) # Utdata: [1, 1, 1]

Relaterte innlegg:

Legg igjen en kommentar