6 különböző megközelítés a listák megjelenítéséhez Pythonban

6 különböző megközelítés a listák megjelenítéséhez Pythonban

Forrás csomópont: 3091325

Bevezetés

A Pythonban a listák nyomtatása nem csak az értékek megjelenítéséről szól; így a programozók jobban megérthetik a kódjukat, és megbizonyosodhatnak arról, hogy az adatok helyesen néznek ki. Fedezze fel a listák nyomtatásának különböző módjait, gyakorlati példákkal és tippekkel, hogy a dolgokat világosabbá tegyük. Merüljünk el a Python listák világában.

Jelentkezz be a miénkbe ingyenes tanfolyam a Pythonból.

Tartalomjegyzék

Listák nyomtatása Pythonban

Nyomtatás listák Pythonban számos módszert nyit meg, és ebben a cikkben több hatékony megközelítést is megvizsgálunk:

  • A for loop használata
  • Konvertálja a listát karakterláncsá a megjelenítéshez
  • A sep paraméter használata a print()-ben
  • A map() függvény használata
  • Indexelés és szeletelés használata
  • A listaértés használata

Lista megjelenítése Pythonban For ciklus használatával

Ismételje meg a listát 0-tól a hosszáig, és minden elemet külön-külön nyomtasson ki a for ciklus segítségével; ez a hagyományos módja a megvalósításnak.

Az alábbiakban egy példa látható egy lista Pythonban való megjelenítésére for ciklus használatával:

# Creating a list of fruits

fruits = ["apple", "banana", "orange", "grape", "kiwi"]

# Displaying each fruit using a for loop

print("List of Fruits:")

for fruit in fruits:

    print(fruit)

Ebben a példában van egy gyümölcslistánk, és a for ciklus a lista minden elemén keresztül iterál, és egyenként jeleníti meg azokat.

output:

Listák megjelenítése

Időbonyolultság (O(n)):

Az időbonyolultság O(n), mert egy for ciklusban a lista minden elemét egyszer felkeresik, és a ciklus végrehajtásához szükséges idő egyenesen arányos a bemeneti lista elemeinek számával.

A tér összetettsége (O(1)):

A tér összetettsége O(1), mivel a hurok állandó mennyiségű memóriát használ, függetlenül a bemeneti mérettől; csak egyetlen változót (elemet) használ a lista minden elemének ábrázolására, és nem hoz létre további adatstruktúrákat, amelyek a bemenettel együtt növekednek.

Jelenítse meg a listát karakterláncsá alakítva

Amikor egy listával foglalkozunk húrok, egy egyszerű megközelítés a join() függvény használata az egyszerű összefűzéshez. Ha azonban a lista egész számokat tartalmaz, akkor egy kétlépéses folyamatra van szükség: először konvertálja azokat karakterláncokká, majd használja a join() függvényt, hogy egységes karakterláncot hozzon létre a megjelenítéshez.

Íme egy példa:

# Example list of fruits

fruits = ["apple", "banana", "orange", "grape", "kiwi"]

# Convert the list to a string and display it

result_string = ', '.join(fruits)

print("List of Fruits: " + result_string)

Ebben a példában a join metódus a lista elemeit egyesíti húr, vesszővel és szóközzel elválasztva. Az eredmény ezután formázott karakterláncként jelenik meg.

output:

Listák megjelenítése

Időbonyolultság (O(n)):

Az időbonyolultság O(n), mert egy for ciklusban a lista minden eleme egyszer kerül feldolgozásra, és a végrehajtási idő lineárisan skálázódik a bemeneti lista elemeinek számával. A bemenet növekedésével az algoritmus futásideje arányosan növekszik.

A tér összetettsége (O(1)):

A tér összetettsége O(1), mivel az algoritmus a bemeneti mérettől függetlenül állandó mennyiségű memóriát használ. A ciklusnak csak egyetlen változóra (elemre) van szüksége a lista egyes elemeinek megjelenítéséhez, és nem hoz létre további adatstruktúrákat vagy memóriát, amely a bemeneti lista méretétől függ.

Megjelenítés a sep paraméterrel a Print()-ben

A print() függvény sep paramétere lehetővé teszi, hogy elválasztót adjon a nyomtatandó elemek között. 

A csillag (*) szimbólum használatával a listaelemek egyetlen sorban, szóközökkel jeleníthetők meg. Ha minden elemet új sorban vagy vesszővel elválasztva jelenít meg, használja a sep=”n” vagy a sep=”, ” karakterláncot. 

Íme egy példa a gyümölcslista használatára:

# Example list of fruits

fruits = ["apple", "banana", "orange", "grape", "kiwi"]

# Displaying the list with a custom separator using the sep parameter

print("List of Fruits:", *fruits, sep=", ")

Ebben a példában a sep=”, ” azt határozza meg, hogy a lista elemei között vesszőt és szóközt kell használni.

output:

Időbonyolultság (O(n)):

Az időbonyolultság O(n), mivel a for hurokkal a lista minden eleme külön-külön kerül feldolgozásra. Az elemek számának (n) növekedésével a végrehajtási idő lineárisan növekszik, ami a bemeneti méret és a számítási idő közötti közvetlen kapcsolatot tükrözi.

A tér összetettsége (O(1)):

A tér összetettsége O(1), mivel az algoritmus konzisztens mennyiségű memóriát használ, függetlenül a bemeneti mérettől. A hurok rögzített változókészletet (például „elemet”) alkalmaz, és elkerüli a további adatstruktúrák létrehozását vagy a memória dinamikus lefoglalását a bemeneti mérethez képest.

Lista megjelenítése Pythonban a Map() függvény segítségével

Használja a map() függvényt annak biztosítására, hogy a lista minden eleme karakterlánc legyen, különösen, ha a lista nem karakterlánc-elemeket tartalmaz. Ezt követően egyesítse ezeket az átalakított elemeket az összekapcsolás funkcióval az egységes megjelenítés érdekében.

Íme egy példa a gyümölcslista megjelenítésére Pythonban:

# Example list of fruits

fruits = ["apple", "banana", "orange", "grape", "kiwi"]

# Displaying the list of fruits

print("List of Fruits:", fruits)

output:

A print() függvény automatikusan formázza a listát a megjelenítéshez. Ha tovább szeretné testreszabni a kimenetet, ismételheti a listát, és külön-külön kinyomtathatja az egyes elemeket, vagy használhatja az összekapcsolási módszert, a korábbi példákban látható módon.

Lista megjelenítése Pythonban az indexelés és a szeletelés használatával

Megjeleníthet egy listát a Pythonban indexeléssel és szeleteléssel, hogy elérje bizonyos elemeket vagy a lista egy részhalmazát. 

Íme egy példa:

# Example list of fruits

fruits = ["apple", "banana", "orange", "grape", "kiwi"]

# Displaying the entire list

print("Complete List of Fruits:", fruits)

# Displaying specific elements using indexing

print("First Fruit:", fruits[0])

print("Third Fruit:", fruits[2])

# Displaying a subset using slicing

print("Subset of Fruits:", fruits[1:4])

output:

Ebben a példában az indexelést használjuk az egyes elemek eléréséhez (pl. gyümölcsök[0] az első elemhez), a szeletelés pedig a lista egy részhalmazának megjelenítéséhez (pl. gyümölcsök[1:4] az 1. indexben lévő elemekhez, 2. és 3.).

Időbonyolultság (O(n)):

Az időbonyolultság O(n), mert a listán való iteráció indexeléssel vagy szeleteléssel minden elemet egyszer meglátogat. A lista (n) méretének növekedésével a lista eléréséhez vagy szeleteléséhez szükséges idő lineárisan nő.

A tér összetettsége (O(1)):

A terület bonyolultsága O(1) az indexelési és szeletelési műveleteknél, mivel ezek állandó mennyiségű további memóriát használnak, függetlenül a lista méretétől. Az index/szelet változókhoz szükséges memória állandó marad, nem skálázódik a bemeneti mérettel.

Lista megjelenítése Pythonban a listaértés segítségével

A listaértés a Python tömör funkciója, amellyel listákat hozhatunk létre egy meglévő iterálható elem minden elemére kifejezés alkalmazásával. Kompakt szintaxist biztosít, amely egyesíti az új lista létrehozásának lépéseit és az átalakítások alkalmazását az elemeire.

Íme egy példa a gyümölcsök módosított listájának megjelenítésére listaértés segítségével:

# Example list of fruits

fruits = ["apple", "banana", "orange", "grape", "kiwi"]

# Using list comprehension to create a new list with capitalized fruits

capitalized_fruits = [fruit.capitalize() for fruit in fruits]

# Displaying the new list

print("Capitalized Fruits:", capitalized_fruits)

output:

Listák megjelenítése

Ebben a példában a listaértelmezést használjuk egy új lista létrehozására (nagybetűs_gyümölcsök). Az eredmény a gyümölcsök listája nagy kezdőbetűvel.

Időbonyolultság (O(n)):

Ebben a példában az időbonyolultság O(n), mert az eredeti gyümölcslista minden elemén keresztül iterál. A végrehajtási idő lineárisan skálázódik a gyümölcsök számával, így arányos a bemeneti lista méretével.

A tér összetettsége (O(n)):

A tér összetettsége O(n), mivel a listaértés új listát hoz létre (nagybetűs_gyümölcs), amely a bemeneti lista (gyümölcsök) méretével nő. Az eredeti lista minden eleme megfelel az új lista egy elemének, ami hozzájárul a bemeneti méret és a használt memória közötti lineáris kapcsolathoz.

Következtetés

A Pythonban a listák nyomtatásának művészetének elsajátítása kulcsfontosságú a kód megértéséhez és az adatok megjelenítéséhez. Ez az útmutató hat hatékony módszert vizsgál meg a listák megjelenítésére, gyakorlati példákat és tippeket kínálva az áttekinthetőség érdekében. Függetlenül attól, hogy hurkokat, karakterlánc-konverziót, egyéni elválasztókat, leképezési funkciókat, indexelést, szeletelést vagy listaértést használ, mindegyik megközelítés meghatározott célt szolgál, és fejleszti Python programozási készségeit.

Gyakran ismételt kérdések

Q1. Miért ajánlott a listaértés a listák megjelenítéséhez?

V. A lista megértése tömör szintaxisa és hatékonysága miatt ajánlott. Lehetővé teszi egy sor kóddal módosított listák létrehozását, így a kód olvashatóbbá válik.

Q2. Hogyan befolyásolja az indexelés az idő bonyolultságát a lista megjelenítésekor?

V. Az indexelés időbonyolítása O(1) az egyes elemek eléréséhez, állandó időt biztosítva a lista méretétől függetlenül. A teljes lista indexeléssel történő iterálása azonban O(n) időbeli összetettséget eredményez.

Q3. Mikor kell a print()-ben a sep paramétert használni?

V. A sep paraméter akkor hasznos, ha testreszabja az elválasztót a nyomtatott lista elemei között. Rendezett megjelenítést tesz lehetővé, különösen akkor, ha az elemeket egyetlen sorban vagy meghatározott elválasztóval jeleníti meg.

Q4. Van-e javasolt módszer a karakterláncok listájának megjelenítésére?

V. Igen, a join() függvény használata javasolt a karakterláncok listájának megjelenítéséhez. Hatékonyan összefűzi az elemeket egy meghatározott elválasztóval, egységes karakterláncot hozva létre a könnyű megjelenítés érdekében.

5. kérdés: Hogyan befolyásolja a lista értelmezése a tér összetettségét?

5. válasz: A lista megértésének térbeli összetettsége O(n), ahol n a bemeneti lista mérete. Létrehoz egy új listát az eredeti listával megegyező számú elemből. Ezért hozzájárul a bemeneti méret és a memóriahasználat közötti lineáris kapcsolathoz.

Időbélyeg:

Még több Analytics Vidhya