Preobrat seznama ali matrike je običajna programska naloga. Obstaja veliko primerov, ko boste morda morali podatke predstaviti v obratnem vrstnem redu, na primer pri razvrščanju seznama.

Kako lahko obrnete seznam ali matriko s Pythonom? V tem članku se boste naučili različnih pristopov.

Ustvarite kopijo z zanko for

Medtem Pythonova zanka za je bolj podrobno, v nekaterih primerih je morda priročno. Na primer, zagotavlja večjo prilagodljivost pri izvajanju kompleksne logike na nekaterih točkah obratne operacije.

Pri uporabi vdolbine za zanko, je običajen pristop ponavljanje po izvirnem seznamu v obratnem vrstnem redu. Začenši s končnim elementom, vsaka ponovitev nato doda prejšnji element na nov seznam.

Glede na primer seznama celih števil med enim in devetim, tukaj je opisano, kako obrniti matriko z uporabo zamaknjenega za zanka:

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

# Ustvarite prazen seznam za shranjevanje obrnjenega niza:
reversed_list = []

# Odštejte eno od dolžine izvirnega niza, da začnete od zadnjega indeksa:
reduktor = len (jeziki)-1

instagram viewer

# Obrnite seznam znotraj zanke for:
za i v jezikih:
reversed_list.append (jeziki[reducer]) # Rezultat dodajte na prazen seznam
reduktor -=1 # Zmanjšajte indeks za eno pri vsaki ponovitvi z uporabo reduktorja

natisni (reversed_list)

Izhod:

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

Obrnite seznam ali matriko z uporabo razumevanja seznama

A razumevanje seznama ustvari krajšo kodo. In ni potrebe po začasni spremenljivki, ker razumevanje seznama deluje na seznamu, ki je na mestu.

Za izvedbo prejšnje operacije z uporabo razumevanja seznama:

reduktor = len (jeziki)

# Zmanjšaj indeks znotraj funkcije obsega z uporabo zanke for v razumevanju seznama
Reversed_list = [jeziki[reducer] za reduktor v obsegu (reducer -1,-1,-1)]
natisni (Reversed_list)

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

Uporabite Operator rezine

Operator rezine seznama je precej preprost, čeprav ima nekaj omejitev. Na primer, morda ne boste mogli prilagoditi izhoda, kot bi pri uporabi a za zanka.

Takole lahko obrnete seznam z operaterjem rezine:

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

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

The [::-1] sintaksa je pametna bližnjica, ki povzroči obrnjen seznam. Dejansko pomeni "kopiraj vsak element seznama, začenši od konca in šteje nazaj" - torej "obrni"!

Uporabite povratno metodo matrike

To je še ena metoda, ki deluje na mestu: spremeni izvirno matriko. To je lahko pomanjkljivost, saj prejšnjega seznama ne morete obdržati za druge operacije.

Tukaj je, kako obrniti matriko z uporabo povratne metode:

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

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

Uporabite obrnjeno funkcijo

Obrnjena funkcija ponovi seznam, matriko ali katero koli drugo zaporedje in vrne njegovo obrnjeno kopijo. Vendar pa morate obrnjen izhod izrecno deklarirati kot seznam.

Takole deluje:

jeziki = [1, 2, 3, 4, 5, 6, 7, 8, 9]
natisni (seznam (obrnjeno (jeziki)))

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

Postanemo ustvarjalni z nizi

Nizi ali seznami so običajni načini za shranjevanje podatkov. Glede na vaš cilj boste morda želeli stranki predstaviti podatke v obratnem vrstnem redu. Eden od načinov za to je, da obrnete matriko ali seznam, preden ga upodabljate. Kot ste videli, obstaja nekaj načinov, kako obrniti seznam v Pythonu. Izberite tisto, kar vam najbolj ustreza in je v skladu z vašo logiko za določeno težavo.

Morda boste želeli videti tudi, kako obrniti matriko v drugih programskih jezikih, da boste bolje razumeli logiko ozadja.

Kako obrniti matriko v C++, Python in JavaScript

Preberite Naprej

DelitiTweetDelitiE-naslov

Povezane teme

  • Programiranje
  • Programiranje
  • Python
  • algoritmi

O avtorju

Idowu Omisola (Objavljenih 138 člankov)

Idowu je navdušen nad vsemi pametnimi tehnologijami in produktivnostjo. V prostem času se igra s kodiranjem in, ko mu je dolgčas, preklopi na šahovnico, rad pa se občasno odmakne od rutine. Njegova strast, da ljudem pokaže pot okoli sodobne tehnologije, ga motivira, da piše več.

Več od Idowu Omisola

Naročite se na naše novice

Pridružite se našemu glasilu za tehnične nasvete, ocene, brezplačne e-knjige in ekskluzivne ponudbe!

Kliknite tukaj, da se naročite