Saraksta vai masīva apvēršana ir izplatīts programmēšanas uzdevums. Ir daudz gadījumu, kad dati var būt jāiesniedz apgrieztā secībā, piemēram, kārtojot sarakstu.

Kā jūs varat mainīt sarakstu vai masīvu, izmantojot Python? Šajā rakstā jūs uzzināsit par dažādām pieejām.

Izveidojiet kopiju, izmantojot for Loop

Kamēr Python ir cilpa ir daudz detalizētāks, dažos gadījumos tas varētu būt noderīgi. Piemēram, tas nodrošina lielāku elastību, veicot sarežģītu loģiku dažos apgrieztās darbības punktos.

Lietojot atkāpi priekš cilpa, izplatīta pieeja ir atkārtot sākotnējo sarakstu apgrieztā secībā. Sākot ar pēdējo elementu, katra iterācija pēc tam pievieno iepriekšējo elementu jaunam sarakstam.

Piemēram, ņemot vērā veselu skaitļu sarakstu no viena līdz deviņiem, tālāk ir norādīts, kā apgriezt masīvu, izmantojot atkāpi priekš cilpa:

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

# Izveidojiet tukšu sarakstu, lai turētu apgriezto masīvu:
reversed_list = []

# Atņemiet vienu no sākotnējā masīva garuma, lai sāktu no pēdējā indeksa:
reduktors = len (valodas)-1

# Apgrieziet sarakstu for cilpas iekšpusē:
man valodās:
reversed_list.append (valodas[reducētājs]) # Pievienojiet rezultātu tukšajam sarakstam
reduktors -=1 # Samaziniet indeksu par vienu katrā iterācijā, izmantojot reduktoru

drukāt (apgrieztais_saraksts)

Izvade:

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

Apgriezt sarakstu vai masīvu, izmantojot saraksta izpratni

A saraksta izpratne rada īsāku kodu. Un nav nepieciešams pagaidu mainīgais, jo saraksta izpratne darbojas saskaņā ar sarakstu.

Lai veiktu iepriekšējo darbību, izmantojot saraksta izpratni:

reduktors = len (valodas)

# Samaziniet indeksu diapazona funkcijā, izmantojot cilpu saraksta izpratnē
Reversed_list = [valodas[reducētājs] diapazonā (reducētājs -1,-1,-1)]
drukāt (apgrieztais_saraksts)

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

Izmantojiet Slice operatoru

Saraksta šķēlumu operators ir diezgan vienkāršs, lai gan tam ir daži ierobežojumi. Piemēram, iespējams, nevarēsiet pielāgot izvadi, kā to darītu, izmantojot a priekš cilpa.

Tālāk ir norādīts, kā apgriezt sarakstu, izmantojot slāņa operatoru.

valodas = [1, 2, 3, 4, 5, 6, 7, 8, 9]
rev_list = valodas[::-1]
drukāt (rev_list)

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

The [::-1] sintakse ir gudrs īsinājumtaustiņš, kas rada apgrieztu sarakstu. Tas faktiski nozīmē "nokopēt katru saraksta elementu, sākot no beigām un skaitot atpakaļ" - t.i., "apgriezt atpakaļ"!

Izmantojiet masīva apgriezto metodi

Šī ir vēl viena metode, kas darbojas vietā: tā maina sākotnējo masīvu. Tas var būt trūkums, jo jūs nevarat saglabāt iepriekšējo sarakstu citām darbībām.

Lūk, kā apgriezt masīvu, izmantojot apgriezto metodi:

valodas = [1, 2, 3, 4, 5, 6, 7, 8, 9]
languages.reverse()
drukāt (valodas)

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

Izmantojiet apgriezto funkciju

Apgrieztā funkcija atkārto sarakstu, masīvu vai jebkuru citu secību un atgriež savu apgriezto kopiju. Tomēr jums ir skaidri jādeklarē apgrieztā izvade kā saraksts.

Tas darbojas šādi:

valodas = [1, 2, 3, 4, 5, 6, 7, 8, 9]
drukāt (saraksts (apgriezts (valodas)))

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

Kļūsti radoši, izmantojot masīvus

Masīvi vai saraksti ir izplatīti datu glabāšanas veidi. Atkarībā no jūsu mērķa, iespējams, vēlēsities sniegt datus klientam apgrieztā secībā. Viens veids, kā to izdarīt, ir apgriezt masīvu vai sarakstu pirms tā renderēšanas. Kā redzējāt, Python sarakstā ir vairāki veidi, kā invertēt sarakstu. Izvēlieties to, kas jums vislabāk atbilst un atbilst jūsu loģikai konkrētai problēmai.

Varat arī uzzināt, kā mainīt masīvu citās programmēšanas valodās, lai labāk izprastu fona loģiku.

Kā apgriezt masīvu programmā C++, Python un JavaScript

Lasiet Tālāk

DalītiesČivinātDalītiesE-pasts

Saistītās tēmas

  • Programmēšana
  • Programmēšana
  • Python
  • Algoritmi

Par autoru

Idowu Omisola (Publicēti 138 raksti)

Idowu aizraujas ar jebko viedo tehnoloģiju un produktivitāti. Brīvajā laikā viņš spēlējas ar kodēšanu un pārslēdzas uz šaha galdu, kad viņam ir garlaicīgi, taču viņam patīk arī ik pa laikam atrauties no rutīnas. Viņa aizraušanās parādīt cilvēkiem ceļu par modernajām tehnoloģijām motivē viņu rakstīt vairāk.

Vairāk no Idowu Omisola

Abonējiet mūsu biļetenu

Pievienojieties mūsu informatīvajam izdevumam, lai saņemtu tehniskos padomus, pārskatus, bezmaksas e-grāmatas un ekskluzīvus piedāvājumus!

Noklikšķiniet šeit, lai abonētu