Kui sa programmeerid Pythonis, siis oled võib-olla kuulnud erilistest väärtustest, millel on teatud tähendused. Üks tähtsamaid ja samas huvitavamaid väärtusi Pythoni keelest on None. See väärtus esindab väärtuse puudumist või "tühjust" programmeerimises. Erinevalt tühjast stringist või nullist on None ainulaadne kohane, mis mängib mitmesugustes kontekstides rolli, eriti funktsioonides. See juhend tutvustab sulle None'i erinevaid tahke ja näitab, kuidas sa saad seda väärtust tõhusalt oma programmides kasutada.
Tähtsaimad tähelepanekud
- Eriti väärtus None tähistab "ilma väärtuseta" ning tal on eriline tähendus Pythoni keeles.
- None erineb teistest tühi väärtustest nagu tühjad stringid või tühi kogum.
- None'iga töötamine funktsioonides nõuab arusaamist sellest, kuidas Python sellega ümber käib.
- Olukordade nagu if kasutamine võib olla kasulik, et kontrollida, kas muutuja väärtus sisaldab None'i.
Väärtuse None mõistmine
Alustame selgitamisega, mida None tegelikult tähendab ja kuidas see erineb teistest väärtustest. Pythoni keeles on erinevaid väärtusi, mis peetakse "vale" või tühi, nende hulka kuuluvad näiteks: tühjad stringid, tühjad loendid või tühjad kogud. Neid tõlgendatakse loogilistes võrdlustes kui False. None seevastu on spetsiifiline tüüp, mis näitab, et väärtust ei ole.

See eristus on eriti oluline, kui sa töötad funktsioonidega. Kui funktsioonil ei ole tagastusväärtust, tagastab see vaikimisi None'i. See näitab, et väärtust ei ole üle kantud.
Töötamine funktsioonide ja None'iga
Kujuta ette, et defineerid funktsiooni, mis lihtsalt prindib nime, kuid ei peaks tagastama mingit väärtust. Sa saad seda teha, kirjutades funktsiooni ilma return-lause.
Kuid kui sa üritad funktsiooni käitamise tulemust muutuja külge määrata, siis saad teada, et saad hoiatuse. Arendusvahendis nagu PyCharm saad sõnumi, et funktsioon ei tagasta väärtust.

Vaata järgmist koodi:
Pärast seda, kui oled funktsiooni kutsunud, saad tulemuse salvestada muutuja sisse.

Aga mis juhtub, kui sa üritad tulemuse salvestada muutuja sisse ja seejärel selle muutuja välja anda? Tulemuseks on None, kuna funktsioonil ei ole tagastusväärtust. See viib meid tagasi None'i tähenduse juurde – see näitab, et funktsioon "ei anna" midagi tagasi.
Olukorrasnoodid None'iga
Oluline aspekt None'ist on see, et sa saad väga lihtsalt kontrollida, kas muutuja on seatud None'iks. Selleks saad kasutada if-tingimust. Kui result on seega seatud None'iks, saad kasutada järgmist loogilist lauset:

Esimesel juhul sa ei näe teadet "Result on true", kuna result on tõepoolest seatud None'iks. Else-tingimuses saad väljastada sõnumi "Result ei ole true".

Teine näide oleks, kui soovid konkreetselt kontrollida, kas muutuja väärtus on None. Selleks saad kasutada võrdlusoperaatorit is:

See spetsiifiline võrdlus aitab sul paremini mõista, kas tegemist on tõepoolest None'iga, vastupidiselt tühjale stringile või muule vale väärtusele.
None'i olulisus
Miks on oluline kasutada väärtust None oma programmides? Selge eristus "ilma väärtuseta" ja "väärtusetu" vahel võib aidata sul oma loogikat täpsemaks muuta. Kui sa kasutad tühja stringi vaikimisi väärtusena, võib see teatud kontekstides segadust tekitada. None on selgelt eristatav ja seda on lihtne kasutada loogilistes väljendites.
Kokkuvõte – Eriline väärtus None Pythoni keeles
None mängib keskset rolli Pythoni programmeerimises, kuna see võimaldab sul selgelt ja täpselt esitada muutujate seisundit. Mõistmine, millal ja kuidas None'i kasutada, aitab sul oma funktsioone efektiivsemaks muuta ja loogikavigu vältida. Erinevus mitteeksisteeriva väärtuse ja tühja väärtuse vahel on fundamentaalne ning parandab sinu koodi täpsust.
Küsimused ja vastused
Mis tähendus on eriliselt väärtusel None Pythoni keeles?None tähistab väärtuse puudumist ja on eriline kohane.
Kuidas erineb None tühjast stringist?None on tüüp, mis näitab, et väärtust ei eksisteeri, samas kui tühi string on kehtiv, eksisteeriv märkide jada, mis ei sisalda mingeid märke.
Kas ma saan None'i kasutada tingimustes?Jah, sa saad kasutada None'i tingimustes, et tuvastada, kas muutuja ei oma väärtust.
Kuidas ma tagastan None'i funktsioonist?Funktsioon ilma return-lause tagastab vaikimisi None'i.
Kuidas ma kontrollin, kas muutuja on None?Sa saad kasutada if variable is None:, et kontrollida, kas muutuja väärtus on None.