Mladenič, ki doma tipka na prenosnem računalniku
Zasluga slike: g-stockstudio/iStock/Getty Images
Za razliko od C++ in Jave spremenljivke Python ne vsebujejo eksplicitnih informacij o vrsti. Če uporabljate funkcijo, ki zahteva niz, ji lahko posredujete spremenljivke drugih vrst brez vrže izjemo, čeprav lahko vaša koda vrže izjemo, ko poskuša obdelati spremenljivko. Edini tipi podatkov, ki jih boste morda morali pretvoriti v nize, so sestavljene podatkovne strukture, kot so nabori in seznami. Python vključuje priročne funkcije in operaterje za ponavljanje elementov v podatkovni strukturi in dodajanje znakov spremenljivki niza.
Močni, dinamično vtipkani jeziki
C++ in Java zahtevata rezervno besedo tipa pred vsemi dodelitvami spremenljivk, ker mora prevajalnik ali okolje izvajanja vedeti, kako ravnati s podatki. Ti statično tipizirani jeziki uporabljajo pretvorbo tipov za pretvorbo med tipi, če je mogoče. Ker je Python dinamično tipiziran jezik, tolmač sklepa o vrsti med izvajanjem, tako da spremenljivkam po potrebi preprosto dodelite vrednosti. Spremenljivki, ki se je prej uporabljala kot druga vrsta, lahko dodelite kateri koli tip podatkov, zbiralnik smeti Python pa odstrani staro spremenljivko iz pomnilnika.
Video dneva
Pretvarjanje podatkovnih struktur v nize
Če vaš program zbira informacije o besedilu v sestavljeni strukturi, kot je seznam, kortek ali niz, lahko preletite podatkovno strukturo, da dodate elemente spremenljivki niza. Ni vam treba deklarirati spremenljivke niza pred ponavljanjem podatkovne strukture, lahko pa poenostavi vašo kodo. Na primer, naslednja koda prikazuje najbolj osnovno metodo za pretvorbo seznama v niz:
ultimateQuestion = "" # razglasi prazen niz "ultimateQuestion"
tokens = ["Kaj je ", 6, "krat", 9, "?"] # seznam mešanih vrst s presledki
za t v žetonih: ultimateQuestion += str (t)
natisni (ultimateQuestion)
Metoda str, uporabljena v zanki for, odda cela števila v nize in nima vpliva na obstoječe nize. Če zaženete to kodo v tolmaču Python, izpiše "Koliko je 6 krat 9?"
Vgrajene metode nizov
Kot večina jezikov visoke ravni, Python vključuje številne metode, ki spadajo v vgrajeno vrsto nizov. V Pythonu lahko te metode pokličete iz literala niza, tako da lahko na primer povežete elemente seznama, lahko posredujete spremenljivko seznama v metodo pridružitve literala niza, kot je prikazano v naslednjem primeru:
tokens = ['Pozdravljeni', 'Svet'] #niz žetonov brez presledkov
pyString = ' '.join (žetoni)
tiskanje (pyString)
Ta skript pokliče pridružitev iz literala niza ' ', ki je enoznakovni niz samo presledka. Povezuje 'Hello' in 'World' v "Hello World" tako, da vstavi klicni objekt - presledek - med vsak element seznama.
Ločljivost spremenljivega obsega Python
Kot v drugih jezikih visoke ravni, morate biti pri deklariranju in dodeljevanju nizovnih spremenljivk pozorni na obseg spremenljivke. Če deklarirate nizovno spremenljivko znotraj funkcije ali zanke, je ne morete uporabiti nikjer drugje v programu. Tolmač Python na primer uniči spremenljivko "verticalList" po vrnitvi iz zanke:
za g v živilih: verticalList += g + '\n' # niz, deklariran znotraj zanke
natisni (verticalList)
Ta skript vrže izjemo, ker "verticalList" ni definiran zunaj obsega zanke for.