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# 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
Relaterede emner
- Programmering
- Programmering
- Python
- Algoritmer
Om forfatteren

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.
Abonner på vores nyhedsbrev
Tilmeld dig vores nyhedsbrev for tekniske tips, anmeldelser, gratis e-bøger og eksklusive tilbud!
Klik her for at abonnere