Atrisināts: python secīgu skaitļu atšķirība starp

Galvenā problēma, kas saistīta ar Python secīgu skaitļu atšķirību, ir tā, ka atšķirība starp diviem secīgiem skaitļiem ne vienmēr ir vienāda. Piemēram, ja jums ir skaitļu saraksts [1, 2, 3], atšķirība starp 1 un 2 ir 1, bet starpība starp 2 un 3 ir tikai 0.5. Tas var radīt neskaidrības, mēģinot aprēķināt vērtību atšķirības vai izmantojot algoritmus, kas balstās uz nemainīgu soļa lielumu.

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. rindiņa: šī rinda definē funkciju, ko sauc par secīgu_atšķirību, kas izmanto vienu argumentu — skaitļus.
# 2. rindiņa: šī rinda izveido tukšu sarakstu, ko sauc par diff.
# 3. rindiņa: šī rinda ir for cilpa, kas atkārtojas garumā no skaitļiem mīnus viens.
# 4. rindiņa: šī rinda atšķirību sarakstam pievieno katra elementa starpības absolūto vērtību skaitļos.
# 5. rinda: šī rinda atgriež atšķirību sarakstu pēc tam, kad tas ir aizpildīts ar visām atšķirībām starp secīgajiem elementiem skaitļos.
# 8. rindiņa: šajā rindā tiek iestatīts mainīgais, ko sauc par nums, kas vienāds ar sarakstu, kurā ir 2, 4, 6 un 8.
# 9. rindiņa: šajā rindā tiek izdrukāts consecutive_difference izsaukšanas rezultāts uz numuriem.

Atrodiet secīgus skaitļus Python sarakstā

Python sarakstā secīgu skaitļu atrašana ir salīdzinoši vienkārša. Vienkāršākā pieeja ir pārskatīt sarakstu un salīdzināt katru elementu ar iepriekšējo. Ja starpība starp diviem elementiem ir 1, tad tie ir secīgi skaitļi.

Šeit ir piemērs, kā to var izdarīt:

skaitļi = [1,2,3,4,5,6] # Ciparu saraksts
consecutive_numbers = [] # Saraksts, lai saglabātu secīgus skaitļus
i diapazonā(len(skaitļi)-1): # Pāriet sarakstā
if (skaitļi[i+1] – skaitļi[i]) == 1: # Pārbaudiet, vai atšķirība starp diviem elementiem ir 1
consecutive_numbers.append(numbers[i]) # Pievienot elementu secīgo skaitļu sarakstam
consecutive_numbers.append(skaitļi[i+1]) # Pievienot nākamo elementu secīgo skaitļu sarakstam
print(consecutive_numbers) # Izdrukā secīgo skaitļu sarakstu

Iegūstiet atšķirību starp secīgiem skaitļiem sarakstā

Programmā Python varat uzzināt atšķirību starp secīgiem skaitļiem sarakstā, izmantojot funkciju zip (). Funkcija zip() aizņem divus vai vairākus atkārtojumus un atgriež korešu iteratoru. Pirmais vienums katrā nokārtotajā iterējamā tiek savienots pārī kopā, pēc tam otrais vienums katrā nokārtotajā iterējamā tiek savienots pārī kopā un tā tālāk. Lai uzzinātu atšķirību starp secīgiem skaitļiem sarakstā, varat izmantot zip(), lai savienotu pārī katru skaitli ar tā priekšgājēju un pēc tam tos atņemtu, lai iegūtu atšķirību. Piemēram:

list_numbers = [1, 2, 3, 4]
atšķirības = [y – x x, y zip(saraksta_numuri[:-1], saraksta_numuri[1:])]
drukāt(atšķirības) # Izvade: [1, 1, 1]

Related posts:

Leave a Comment