Loendi või massiivi ümberpööramine on tavaline programmeerimisülesanne. On palju juhtumeid, kui peate võib-olla esitama andmed vastupidises järjekorras, näiteks loendi sortimisel.

Kuidas saate Pythoni abil loendit või massiivi tagasi pöörata? Sellest artiklist saate teada erinevaid lähenemisviise.

Looge koopia for Loopi abil

Kuigi Python on tsükli jaoks on paljusõnalisem, võib see mõnel juhul kasulik olla. Näiteks pakub see suuremat paindlikkust keeruka loogika täitmisel pöördtoimingu mõnes punktis.

Kui kasutate taandega jaoks tsükli puhul on levinud lähenemisviis algse loendi kordamine vastupidises järjekorras. Alustades viimasest elemendist, lisab iga iteratsioon eelmise elemendi uude loendisse.

Kui näitena tuuakse täisarvude loend vahemikus üks kuni üheksa, siis siin on, kuidas massiivi pöörata taandega jaoks silmus:

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

# Looge ümberpööratud massiivi hoidmiseks tühi loend:
reverse_list = []

# Viimasest indeksist alustamiseks lahutage algse massiivi pikkusest üks:
reduktor = len (keeled)-1

instagram viewer

# Pöörake loendit for-tsükli sees:
minu jaoks keeltes:
reversed_list.append (keeled[reduktor]) # Lisage tulemus tühja loendisse
reduktor -=1 # Vähendage indeksit ühe võrra iga iteratsiooni korral, kasutades reduktorit

print (reverse_list)

Väljund:

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

Loendi või massiivi ümberpööramine loendi mõistmise abil

A nimekirja mõistmine toodab lühemat koodi. Ja ajutist muutujat pole vaja, sest loendi mõistmine toimib paigas oleva loendi järgi.

Eelmise toimingu sooritamiseks loendi mõistmise abil:

reduktor = len (keeled)

# Vähendage vahemiku funktsiooni indeksit, kasutades loendi mõistmisel tsüklit for
Reversed_list = [keeled[reduktor] vahemiku reduktorile (reduktor -1,-1,-1)]
print (ümberpööratud_loend)

Väljund:
[9, 8, 7, 6, 5, 4, 3, 2, 1]

Kasutage viiluoperaatorit

Loendilõike operaator on üsna lihtne, kuigi sellel on mõned piirangud. Näiteks võib juhtuda, et te ei saa väljundit kohandada nii, nagu kasutaksite a jaoks silmus.

Loendi ümberpööramiseks lõiguoperaatori abil toimige järgmiselt.

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

Väljund:
[9, 8, 7, 6, 5, 4, 3, 2, 1]

The [::-1] süntaks on nutikas otsetee, mille tulemuseks on vastupidine loend. See tähendab tegelikult "kopeerige loendi kõik elemendid, alustades lõpust ja loendades tagasi" - st "pöörake see tagasi"!

Kasutage massiivi vastupidist meetodit

See on veel üks meetod, mis toimib paigas: see muudab algset massiivi. See võib olla puudus, kuna te ei saa säilitada eelmist loendit muude toimingute jaoks.

Massiivi ümberpööramiseks pöördmeetodi abil tehke järgmist.

keeled = [1, 2, 3, 4, 5, 6, 7, 8, 9]
languages.reverse()
trükk (keeled)

Väljund:
[9, 8, 7, 6, 5, 4, 3, 2, 1]

Kasutage vastupidist funktsiooni

Pööratud funktsioon kordab loendit, massiivi või mis tahes muud järjestust ja tagastab selle ümberpööratud koopia. Peate vastupidise väljundi aga selgelt deklareerima loendina.

See toimib järgmiselt.

keeled = [1, 2, 3, 4, 5, 6, 7, 8, 9]
print (loend (tagurpidi (keeled)))

Väljund:
[9, 8, 7, 6, 5, 4, 3, 2, 1]

Loominguliseks muutumine massiividega

Massiivid või loendid on levinud viisid andmete salvestamiseks. Sõltuvalt teie eesmärgist võiksite esitada kliendile andmeid vastupidises järjekorras. Üks võimalus selleks on massiivi või loendi enne renderdamist tagurpidi pöörata. Nagu olete näinud, on Pythonis loendi ümberpööramiseks paar võimalust. Valige see, mis teie jaoks kõige paremini sobib ja sobib konkreetse probleemi loogikaga.

Samuti võiksite näha, kuidas muudes programmeerimiskeeltes massiivi ümber pöörata, et taustaloogikat paremini mõista.

Kuidas massiivi ümber pöörata C++, Pythonis ja JavaScriptis

Loe edasi

JagaSäutsJagaMeil

Seotud teemad

  • Programmeerimine
  • Programmeerimine
  • Python
  • Algoritmid

Autori kohta

Idowu Omisola (138 avaldatud artiklit)

Idowu on kirglik kõige nutika tehnoloogia ja tootlikkuse vastu. Vabal ajal mängib ta ringi kodeerimisega ja lülitub igavlemisel malelauale, kuid armastab ka aeg-ajalt rutiinist lahti murda. Tema kirg näidata inimestele teed kaasaegses tehnikas motiveerib teda rohkem kirjutama.

Veel Idowu Omisolalt

Liituge meie uudiskirjaga

Liituge meie uudiskirjaga tehniliste näpunäidete, arvustuste, tasuta e-raamatute ja eksklusiivsete pakkumiste saamiseks!

Tellimiseks klõpsake siin