[::-1] in Python példákkal

⚡ Okos összefoglaló

[::-1] in Python egy hatékony szeletkifejezés, amely bármilyen szekvenciatípust megfordít. LessAz anyagok az indexelés alapjait, a szeletparamétereket, az a[-1] és a[::-1] közötti különbséget, a lista megfordítását és gyakorlati példákat tárgyalnak.

  • 🔁 Reverse Szelet: A [::-1] üres kezdést, üres leállítást és -1 lépést használ.
  • 📍 Indexelés: A pozitív indexek nullától kezdődnek; a negatív indexek a végétől számítódnak.
  • 🆚 [-1] vs. [::-1]: A [-1] az utolsó elemet adja vissza; a [::-1] pedig a teljes fordított sorozatot adja vissza.
  • 📋 Listák és karakterláncok: Bármilyen indexelt iterálható elemen működik, beleértve a listákat, karakterláncokat, tuple-ket és bájtokat.
  • Gyors és közhelyes: C-ben implementálva, sokkal gyorsabb, mint Python hurkok.
  • 🤖 AI kódrészlet-segítség: A mesterséges intelligencia eszközei elmagyarázzák a szeletparamétereket és szeletekké konvertálják a ciklusokat.

Python Szelet Reverse

Miben van a [::-1] Python?

Python sok különböző szintaxissal és alkalmazással rendelkezik, amikor az 1-es használatáról van szó [-1], vagy úgy is leírható [::-1].

A fenti jelölésben a szögletes zárójelek általában egynél több elemet adnak meg a listában. Szögletes zárójelek használatakor vagy több elemet vagy egyetlen elemet ad meg a listában.

Amikor egy programozó meghatározza a [::-1] értéket, ez azt sugallja, hogy a programnak az elejétől a végéig végig kell haladnia egy adott listán. Indexelhet a pythonban, amely segít egy iterálható sorozat, például lista vagy karakterlánc feldarabolásában.

Milyen típusú a [::-1] a következőben: Python?

Kétféleképpen lehet az 1-et ábrázolni a pythonban, az alábbiak szerint: –

  • Egy egyszerű, kettőspont nélküli szögletes zárójelben és egy másik módszer kettős kettőspontos szintaxissal ábrázolható.
  • Egy iterálható sorozat, például egy lista vagy karakterlánc elemszintre elemezhető [] zárójelek használatával.
  • A [] zárójelben különböző indexeket kell megadni.

A lista szintaxisa az alábbiak szerint látható: –

Szintaxis: –

SEQUENCE [START: STOP: STEP]

A fenti szintaxis egy általános ábrázolás. A kettőspont nélküli szögletes zárójelek szintaxisa a következő:

Szintaxis: –

SEQUENCE [-1]

A két kettőspontot tartalmazó szögletes zárójelek szintaxisa a következő:

Szintaxis: –

SEQUENCE[::-1]

Magyarázat: -

  • A start paraméter a kezdő indexszámot jelöli.
  • A stop paraméter az utolsó vagy utolsó indexszámot jelöli.
  • A paraméterlépés egy opcionális paraméter, amely növeli a kiválasztást. A szintaxisban a lépésszám -1-re van inicializálva.
  • A sorozat lehet karakterlánc, lista vagy szótár a fenti szintaxis szerint.

A[-1] és a[::-1] közötti különbség Python

A [-1] a negatív indexekhez használatos, és segít az elemek fordított sorrendben történő kiválasztásában egy adott listában. A lista elejét jelöli a fordított sorrend végétől. Itt a [-1] az utolsó pozíció első elemét jelöli. A következő példa az A[-1] használatát magyarázza

Példa: -

Python Code:

b= [7,4,5,6]
print ("The list is", b)
print (" The last element in the list is", b [-1])

output:

The list is [7, 4, 5, 6]
The last element in the list is 6

Az A[::-1] és az A[-1] a végrehajtás szempontjából hasonlónak tűnnek, de a szintaxis tekintetében különböznek. Az első szintaxis három paraméterrel rendelkezik, míg az utóbbi szintaxis csak egyetlen paraméterrel rendelkezik.

Az A[::-1]-ben szereplő első két paraméter egy lista kezdetét és végét jelenti. Ha a start és stop paraméterek kimaradnak, akkor a lista összes elemét visszaadja.

Ez az utolsó paraméter a kimenetet fordított sorrendben mutatja. Ez a paraméter nem kötelező.

A következő példa az A[::-1] használatát magyarázza

Példa: -

Python Code:

b= [7,4,5,6]
print ("The list is", b)
print (" The reversed list as determined is", b [::-1])

output:

The list is [7, 4, 5, 6]
The reversed list as determined is [6, 5, 4, 7]

Magyarázat:

A fenti Python kód nem ugyanazt az eredményt adja a létrehozott listára. Ehelyett egy fordított listát biztosít a bemeneti értékként megadott alaplistához.

A fenti különbség azon múlik, hogy Pythonindexelési szabályai.

Hogyan kell végrehajtani az indexelést Python?

Az iterálható python-lista elemeinek eléréséhez indexelést kell végrehajtani a listában, vagy olyan indexet kell használni, amelyet a listában lévő elem pozíciójával alkalmaznak.

Python nulla alapú indexelést végez a listáknál. Nulla alapú indexelés esetén a lista első eleme a 0. pozícióhoz tartozik.

Vegyünk egy példát, és próbáljuk meg elérni a python lista kezdő és második elemét.

Példa: -

Python Code:

b= [7,4,5,6]
print ("The list is", b)
print (" The reverse ordered list as determined is", b [::-1])
print (" The second item found in list is", b [1])
print (" The first or beginning item in the list is", b [0])

output:

The list is [7, 4, 5, 6]
The reverse ordered list as determined is [6, 5, 4, 7]
The second found item in the list is 4
The first or beginning item in the list is 7

Magyarázat:

Amint az a fenti kódban látható, a lista első elemének eléréséhez a 0-t alkalmaztuk indexként a listatípus négyzetében. Hasonlóképpen, az 1-et indexként alkalmaztuk a listatípus négyzetében a lista második elemének eléréséhez. A lista indexelése szótárakra, karakterláncokra és sorokra is vonatkozhat.

Vegyünk egy példát az indexelésre karakterlánc típusa pythonban.

Példa:

Python Code:

b= "GURU99"
print ("The list is", b)
print (" The reverse ordered list as determined is", b [::-1])
print (" The second item found in list is", b [1])
print (" The first or beginning item in the list is", b [0])

output:

The list is GURU99
The reverse ordered list as determined is 99URUG
The second item found in the list is U
The first or beginning item in the list is G

Magyarázat:

Mint fentebb látható, a kimenet megosztja a „GURU99” karakterlánc első és második elemét. A karakterláncot dupla idézőjelekkel kell inicializálni. Python lehetővé teszi az iterálható listák, karakterláncok vagy szótárak negatív indexelését is.

Negatív index megadásával a lista utolsó és második utolsó eleme is elérhető. Vegyünk egy példát egy karakterlánc negatív indexelésére, az alábbiak szerint.

Példa: -

Python Code:

b= "GURU99"
print ("The list is", b)
print (" The reverse ordered list as determined is", b [::-1])
print (" The second item found in list is", b [-2])
print (" The first or beginning item in the list is", b [-1])

output:

The list is GURU99
The reverse ordered list as determined is 99URUG
The second item found in the list is 9
The first or beginning item in the list is 9

Az indexelés egy elemet ad vissza; a szeletelés egy tartományt.

A bevágás szerepe Python

Egyszerűbb szavakkal, a szelet azt jelenti, hogy levágunk valamit. Lehetővé teszi a lista felkockázását pythonban.

Íme, milyen fontos a szeletelés Python:

  • Lehetővé teszi a hozzáférést egy iterálható lista vagy karakterlánc meghatározott elemeihez.
  • Segít a karakterlánc vagy lista törlésében és módosításában is.
  • Az iterálható sorozatot tömör és olvashatóvá teszi.
  • Lehetővé teszi számunkra, hogy az indexelési koncepció egyetlen eleméhez képest több elemhez férjünk hozzá.
  • Indexeket használ az iterálható sorrendben meghatározott cikktartományok beszerzéséhez.
  • A python alatti indexek mindig nulla alapúak, függetlenül attól, hogy szeletelést vagy indexelést végeznek egy iterálható sorozaton keresztül.

A szeletelés két alapvető formában valósítható meg.

  • Az első űrlap egy sorozat kezdő és leállítási indexének paramétereit adja meg. Ezzel a sorozat minden lehetséges elemet visszaad a sorozat kezdete és a sorozat leállítása [vége -1] között.
  • A második módszer a sorozat kezdő és leállítási index paramétereinek megadása a lépéssel együtt. Egy lépés lehetővé teszi bizonyos vagy kiválasztott cikkek visszaküldését egy tételtartományon belül a kezdet és a leállítás között.

A szeletelés első formájának szintaxisa a következő: –

Syntax:

SEQUENCE [START: STOP]

A szeletelés második formájának szintaxisa a következő: –

Syntax:

SEQUENCE [START: STOP: STEP]

Vegyük a példát a szeletelés első formájára, az alábbiak szerint.

Példa

Python Code:

b= "GURU99"
print ("The list is", b)
Substring=b[0:3]
print (" The substring in the list is", Substring)

output:

The list is GURU99
The substring in the list is GUR

Vegyük a példát a szeletelés második formájára, az alábbiak szerint.

Példa

Python Code:

b= "GURU99"
print ("The list is", b)
Substring=b[0:9:2]
print (" The substring in the list is", Substring)

output:

The list is GURU99
The substring in the list is GR9

Python negatív szeletelést is végez egy iterálható sorozathoz. Lehetővé teszi egy sor elem vagy elem elérését a sorozat végétől.

Vegyünk egy példát a sorozat utolsó három elemének eléréséhez az alábbiak szerint.

Példa

Python Code:

b= "GURU99"
print ("The list is", b)
Substring=b[-5:-1]
print (" The substring in the list is", Substring)

output:

The list is GURU99
The substring in the list is URU9

Hogyan kell visszafordítani a Python lista a [::-1] használatával Python?

A negatív szeletelés és negatív indexelés alkalmazható egy karakterlánc vagy lista megfordításához a pythonban. Vegyünk egy „GURU99” nevű karakterláncot egy példa illusztrálására.

Példa

Python Code:

b= "GURU99"
print ("The list is", b)
Substring=b[::-1]
print (" The reverse of string GURU99 is", Substring)

output:

The list is GURU99
The substring in the list is 99URUG

Magyarázat:

Itt a kód lekéri az összes karakterlánc elemet az utolsó pozícióból. -1-gyel kezdődik, és lekéri az összes elemet vagy elemet az utolsó pozícióból. A fenti kódsor arra utasítja a pythont, hogy lépjen vissza az utolsó elemtől, és lépjen fel az első elemhez, ami egy fordított listát vagy egy karakterláncot eredményez.

Példa a [::-1] kifejezésre a következőben: Python

Szeletelés vagy indexelés alkalmazható példáultracegy rövidebb listát egy hosszabb listából. Hasonlóképpen felhasználható példakénttracegy nagyobb karakterláncból származó részkarakterlánc.

Vegyünk egy példát arra, hogyan használhatjuk az 1-et Pythonban ex-heztracegy kisebb lista egy nagyobb listából:

Példa

Python Code:

b = [1, 2, 3, 4, 5, 6, 7]
slist = b[1::]
print("the smaller list from larger list is:",slist)

output:

the smaller list from the larger list is: [2, 3, 4, 5, 6, 7]

Magyarázat:

A fenti kódban, az első index elhagyásával, python extracA lista 2. pozíciójától kezdődően az összes elemet átvizsgálja, és egy kisebb listát hoz létre. Ez azért történt, mert a Python nulla indexelést követ, amikor indexeket alkalmaz a felsorolt ​​elemek pozícióira.

GYIK

Ez egy szelet, amelynek nincs kezdete, nincs megállása, és a lépésköze -1. Egy új sorozatot ad vissza, amelyben az összes elem fordított sorrendben van.

Az olyan mesterséges intelligencia asszisztensek, mint a Copilot és a ChatGPT, elmagyarázzák a start, stop és step paramétereket, és a részletes for ciklusokat tömör szeletkifejezésekké alakítják.

Igen. A mesterséges intelligencia eszközei a list(reversed(seq)) módszert javasolják, ha az olvashatóság felülmúlja a rövidséget, és elmagyarázzák mindkét módszer idő- és memória-kompromisszumait.

Az a[-1] csak az utolsó elemet adja vissza. Az a[::-1] a teljes sorozatot visszaadja megfordítva.

Igen. Bármilyen sorozattípuson működik, beleértve a listákat, karakterláncokat, tuple-ket, bájtokat és bájttömböket. A visszaadott sorozat megtartja eredeti típusát.

A szeletelés általában gyorsabb, mivel C nyelven fut és egy teljes objektumot ad vissza. A reversed() egy lusta iterátort ad vissza, amely memóriabarát, de lassabb.

Nem. A szeletelés egy új szekvenciát ad vissza. Az eredeti lista, karakterlánc vagy tuple érintetlen marad. Használd a list.reverse() függvényt a listák helybeni megfordításához.

Igen. A NumPy ugyanazt a szelet szintaxist támogatja, de egy fordított nézetet ad vissza másolat helyett. Használd a .copy() függvényt, ha független tömbre van szükséged.

Foglald össze ezt a bejegyzést a következőképpen: