At vende en liste eller et array er en almindelig programmeringsopgave. Der er mange tilfælde, hvor du muligvis skal præsentere data i omvendt rækkefølge, såsom når du sorterer en liste.

Hvordan kan du vende en liste eller et array med Python? Du lærer de forskellige tilgange i denne artikel.

Opret en kopi med en for-løkke

Mens Python's for loop er mere omfattende, kan det være praktisk i nogle tilfælde. For eksempel giver det mere fleksibilitet, når der udføres kompleks logik på nogle punkter i den omvendte operation.

Når du bruger en indrykket til loop, er den almindelige tilgang at gentage den originale liste i omvendt rækkefølge. Startende med det sidste element, føjer hver iteration derefter det forrige element til en ny liste.

Givet en liste over heltal mellem et og ni som et eksempel, her er, hvordan man vender en matrix ved hjælp af en indrykket til sløjfe:

sprog = [1, 2, 3, 4, 5, 6, 7, 8, 9]

# Opret en tom liste for at holde det omvendte array:
omvendt_liste = []

# Træk en fra længden af ​​det originale array for at starte fra det sidste indeks:
reducering = len (sprog)-1

instagram viewer

# Vend listen inde i en for-løkke:
for i på sprog:
reversed_list.append (sprog[reducer]) # Føj resultatet til den tomme liste
reducering -=1 # Reducer indekset med et ved hver iteration ved hjælp af reduceringen

print (omvendt_liste)

Produktion:

[9, 8, 7, 6, 5, 4, 3, 2, 1]

Vend en liste eller et array ved hjælp af listeforståelse

EN listeforståelse producerer kortere kode. Og der er ikke behov for en midlertidig variabel, fordi listeforståelse virker på en liste på plads.

For at udføre den forrige handling ved hjælp af en listeforståelse:

reducer = len (sprog)

# Formindsk indekset inden for en rækkeviddefunktion ved hjælp af for loop i en listeforståelse
Reversed_list = [sprog[reducer] for reduktion i rækkevidde (reducer -1,-1,-1)]
print (omvendt_liste)

Produktion:
[9, 8, 7, 6, 5, 4, 3, 2, 1]

Brug Slice Operator

Listeudsnitsoperatøren er ret ligetil, selvom den har nogle begrænsninger. For eksempel er du muligvis ikke i stand til at tilpasse outputtet, som du ville gøre, når du bruger en til sløjfe.

Sådan vender du en liste ved hjælp af udsnitsoperatoren:

sprog = [1, 2, 3, 4, 5, 6, 7, 8, 9]
rev_list = sprog[::-1]
print (rev_list)

Produktion:
[9, 8, 7, 6, 5, 4, 3, 2, 1]

Det [::-1] syntaks er en smart genvej, der resulterer i en omvendt liste. Det betyder faktisk "kopier hvert element på listen, start fra slutningen og tæl baglæns" - dvs. "vend det om"!

Brug en Arrays omvendte metode

Dette er en anden metode, der fungerer på plads: den ændrer det originale array. Dette kan være en mangel, da du ikke kan beholde den tidligere liste til andre operationer.

Sådan vender du et array ved hjælp af den omvendte metode:

sprog = [1, 2, 3, 4, 5, 6, 7, 8, 9]
languages.reverse()
print (sprog)

Produktion:
[9, 8, 7, 6, 5, 4, 3, 2, 1]

Brug den omvendte funktion

Den omvendte funktion gentager en liste, et array eller en hvilken som helst anden sekvens og returnerer dens omvendte kopi. Du skal dog udtrykkeligt erklære det omvendte output som en liste.

Sådan fungerer det:

sprog = [1, 2, 3, 4, 5, 6, 7, 8, 9]
print (liste (omvendt (sprog)))

Produktion:
[9, 8, 7, 6, 5, 4, 3, 2, 1]

Bliv kreativ med arrays

Arrays eller lister er almindelige måder at gemme data på. Afhængigt af dit mål vil du måske præsentere data for klienten i omvendt rækkefølge. En måde at gøre dette på er at vende arrayet eller listen, før du gengiver den. Som du har set, er der et par måder at vende en liste på i Python. Vælg det, der fungerer bedst for dig og stemmer overens med din logik for et specifikt problem.

Du vil måske også se, hvordan du kan vende et array i andre programmeringssprog for at forstå baggrundslogikken bedre.

Sådan vender du et array i C++, Python og JavaScript

Læs Næste

DelTweetDelE-mail

Relaterede emner

  • Programmering
  • Programmering
  • Python
  • Algoritmer

Om forfatteren

Idowu Omisola (138 artikler udgivet)

Idowu brænder for alt smart teknologi og produktivitet. I sin fritid leger han med kodning og skifter til skakbrættet, når han keder sig, men han elsker også at bryde ud af rutinen en gang imellem. Hans passion for at vise folk vejen rundt om moderne teknologi motiverer ham til at skrive mere.

Mere fra Idowu Omisola

Abonner på vores nyhedsbrev

Tilmeld dig vores nyhedsbrev for tekniske tips, anmeldelser, gratis e-bøger og eksklusive tilbud!

Klik her for at abonnere