Pythoni tühjade loendite õpetus - kuidas luua Pythonis tühi loend
Kui soovite õppida, kuidas Pythonis tühja loendit tõhusalt luua, siis see artikkel on mõeldud teile.
Sa õpid:
- Kuidas luua nurksulgudes tühja loendit
[]
? - Kuidas luua tühja loendi abil
list()
. - Nende kasutamise juhtumid.
- Kui tõhusad nad on (üks on kiirem kui teine!).
timeit
Nende võrdlemiseks kasutame moodulit.
Alustagem! ✨
? nurksulgude kasutamine
Tühja nurksulgude paariga saate luua tühja loendi:

? Nõuanne: Määrame muutujale tühja loendi, et seda hiljem meie programmis kasutada.
Näiteks:
num = []
Tühja loendi pikkus on 0
, nagu näete siin:
>>> num = [] >>> len(num) 0
Tühjad loendid on valeväärtused , mis tähendab, et need hindavad False
tõeväärtuse kontekstis:
>>> num = [] >>> bool(num) False
Lisage elemendid tühja loendisse
Saate lisada elemente tühja nimekirja meetodite abil append()
ja insert()
:
append()
lisab elemendi loendi lõppu.insert()
lisab elemendi valitud loendi konkreetsesse indeksisse.
Kuna loendid võivad olla kas tõesed või valed väärtused, olenevalt sellest, kas need on hindamisel tühjad või mitte, saate neid kasutada järgmistes tingimuses:
if num: print("This list is not empty") else: print("This list is empty")
Selle koodi väljund on:
This list is empty
Kuna loend oli tühi, on selle väärtuseks vale.
Üldiselt:
- Kui loend pole tühi, annab see hinnangu
True
, nii et if-klausel täidetakse. - Kui loend on tühi, annab see hinnangu
False
, seega täidetakse muu klausel.
Näide:
Allpool toodud näites loome tühja loendi ja määrame selle muutujale num
. Seejärel lisame for loopi jaoks algselt tühja loendisse elementide (täisarvude) jada:
>>> num = [] >>> for i in range(3, 15, 2): num.append(i)
Kontrollime muutuja väärtust, et näha, kas üksused on edukalt lisatud, ja kinnitame, et loend pole enam tühi:
>>> num [3, 5, 7, 9, 11, 13]
? Nõuanne: me kasutame tavaliselt append()
esimese elemendi lisamist tühja loendisse, kuid saate lisada ka selle elemendi, kutsudes insert()
meetodit koos indeksiga 0
:
>>> num = [] >>> num.insert(0, 1.5) # add the float 1.5 at index 0 >>> num [1.5]
? Loendi () Constructor kasutamine
Teise võimalusena saate luua tüübi konstruktoriga tühja loendi list()
, mis loob uue loendi objekti.
Vastavalt Pythoni dokumentatsioonile:
Kui argumenti ei esitata, loob konstruktor uue tühja loendi[]
.

? Nõuanne: see loob mällu uue loendiobjekti ja kuna me ei edastanud ühtegi argumenti list()
, luuakse tühi loend.
Näiteks:
num = list()
See tühi loend on pikk 0
, nagu näete siin:
>>> num = list() >>> len(num) 0
Ja see on vale väärtus, kui see on tühi (seda hinnatakse False
tõeväärtuse kontekstis):
>>> num = list() >>> bool(num) False
Näide:
See on täielikult toimiv loend, nii et saame sinna lisada elemente:
>>> num = list() >>> for i in range(3, 15, 2): num.append(i)
Ja tulemuseks on mittetühi nimekiri, nagu näete siin:
>>> num [3, 5, 7, 9, 11, 13]
? Kasutusjuhud
- Tavaliselt kasutame
list()
loendite loomiseks olemasolevatest korduvatest failidest, näiteks stringidest, sõnaraamatutest või ühikutest. - Tavaliselt näete
[]
Pythonis tühjade loendite loomiseks nurksulgusid, kuna see süntaks on lühem ja kiirem.
? Tõhusus
Oota! Ma just ütlesin teile, et see []
on kiirem kui list()
...
Aga kui palju kiiremini?
Kontrollime nende ajaefektiivsust ajamooduli abil .
Selle mooduli kasutamiseks oma Pythoni programmis peate selle importima:
>>> import timeit
Täpsemalt kasutame selle mooduli funktsiooni timeit, mida saate selle süntaksiga kutsuda:

? Nõuanne . Koodi korratakse mitu korda, et vähendada väliseid tegureid, näiteks muid protsesse, mis võivad sellel hetkel töötada, tekkida võivaid ajaerinevusi . See muudab tulemused võrdlemise eesmärgil usaldusväärsemaks.
? Märkide peal ... seadke ennast valmis! Siin on kood ja väljund:
Esiteks impordime mooduli.
>>> import timeit
Seejärel alustame iga süntaksi testimist.
Testimine []
:
>>> timeit.timeit('[]', number=10**4) 0.0008467000000109692
Testimine list()
:
>>> timeit.timeit('list()', number=10**4) 0.002867799999989984
? Nõuanne. Pange tähele, et kood, mille soovite ajastada, peab olema ümbritsetud üksikute ''
või topelt jutumärkidega ""
. Funktsiooni tagastatud aega timeit
väljendatakse sekundites.
Võrrelge neid tulemusi:
[]
:0.0008467000000109692
list()
:0.002867799999989984
Näete, et see []
on palju kiirem kui list()
. 0.002
Selles testis oli umbes sekundite vahe :
>>> 0.002867799999989984 - 0.0008467000000109692 0.0020210999999790147
Olen kindel, et te peate seda kohe küsima: miks see on list()
vähem tõhus kui []
siis, kui nad teevad täpselt sama?
Noh ... list()
on aeglasem, kuna see nõuab funktsiooni nime otsimist, sellele helistamist ja seejärel loendis oleva objekti loomist mällu. Seevastu []
on nagu "otsetee", mis ei vaja loendi loomiseks mällu nii palju vaheetappe.
See ajavahe ei mõjuta teie programmi toimimist väga, kuid on tore teada, milline neist on tõhusam ja kuidas nad kulisside taga toimivad.
? Kokkuvõttes
Tühja loendi saate luua tühjade nurksulgude paari []
või tüübikonstruktori abil list()
- sisseehitatud funktsioon, mis loob tühja loendi, kui argumente pole edastatud.
[]
Tühjade loendite loomiseks kasutatakse Pythonis tavaliselt nurksulgusid, kuna see on kiirem ja lühem.
Loodan väga, et teile meeldis minu artikkel ja see oli teile kasulik. Nüüd saate oma Pythoni projektides luua tühje loendeid. Vaadake minu veebikursusi. Jälgi mind Twitteris. ⭐️
Kui soovite loenditesse sügavamale sukelduda, võiksite lugeda järgmist:
- Pythoni loendi lisamine - kuidas lisada massiivi elementi, mida on selgitatud näidetega
- Pythoni sortimisloendi massiivi meetod - kasvav ja kahanev, selgitatud näidetega
- Pythoni loendi lisamine VS Pythoni loendi laiendamine - erinevus massiivi meetodi näidetega selgitatud