Python-tietotyypit

Tässä opetusohjelmassa opit erilaisista tietotyypeistä, joita voit käyttää Pythonissa.

Tietotyypit Pythonissa

Jokaisella Pythonin arvolla on tietotyyppi. Koska kaikki on objekti Python-ohjelmoinnissa, tietotyypit ovat itse asiassa luokkia ja muuttujat ovat näiden luokkien ilmentymiä (objekteja).

Pythonissa on erilaisia ​​tietotyyppejä. Jotkut tärkeistä tyypeistä on lueteltu alla.

Python-numerot

Kokonaisluvut, liukuluvut ja kompleksiluvut kuuluvat Python-numeroihin. Ne määritellään int, floatja complexluokkia Python.

Voimme käyttää type()toimintoa tietää minkä luokan muuttuja tai arvo kuuluu. Vastaavasti isinstance()toimintoa käytetään tarkistamaan, kuuluuko objekti tiettyyn luokkaan.

 a = 5 print(a, "is of type", type(a)) a = 2.0 print(a, "is of type", type(a)) a = 1+2j print(a, "is complex number?", isinstance(1+2j,complex)) 

Tuotos

5 on tyyppiä 2.0 on tyyppiä (1 + 2j) on kompleksiluku? Totta

Kokonaisluvut voivat olla minkä tahansa pituisia, sitä rajoittaa vain käytettävissä oleva muisti.

Liukuluku on tarkka 15 desimaalin tarkkuudella. Kokonaisluku ja kelluvat pisteet erotetaan desimaalipisteillä. 1 on kokonaisluku, 1,0 on liukuluku.

Kompleksiluvut kirjoitetaan muodossa, x + yjjossa x on todellinen osa ja y on kuvitteellinen osa. Tässä on joitain esimerkkejä.

 >>> a = 1234567890123456789 >>> a 1234567890123456789 >>> b = 0.1234567890123456789 >>> b 0.12345678901234568 >>> c = 1+2j >>> c (1+2j) 

Huomaa, että floatmuuttuja b katkaistiin.

Python-luettelo

Lista on järjestetty alkioiden sarja. Se on yksi Pythonin käytetyimmistä tietotyypeistä ja on erittäin joustava. Kaikkien luettelon kohteiden ei tarvitse olla samantyyppisiä.

Luettelon ilmoittaminen on melko suoraviivaista. Pilkuilla erotetut kohteet on suljettu sulkuihin ( ).

 a = (1, 2.2, 'python') 

Voimme viipalointioperaattorin ( )avulla erottaa kohteen tai tuotevalikoiman luettelosta. Hakemisto alkaa Pythonissa nollasta.

 a = (5,10,15,20,25,30,35,40) # a(2) = 15 print("a(2) = ", a(2)) # a(0:3) = (5, 10, 15) print("a(0:3) = ", a(0:3)) # a(5:) = (30, 35, 40) print("a(5:) = ", a(5:)) 

Tuotos

 a (2) = 15 a (0: 3) = (5, 10, 15) a (5 :) = (30, 35, 40) 

Luettelot ovat muutettavissa, eli luettelon elementtien arvoa voidaan muuttaa.

 a = (1, 2, 3) a(2) = 4 print(a) 

Tuotos

 (1, 2, 4) 

Python Tuple

Tuple on järjestetty esineiden sarja, joka on sama kuin luettelo. Ainoa ero on, että joukot ovat muuttumattomia. Kerran luotuja joukkoja ei voi muokata.

Tuplia käytetään tietojen suojaamiseen kirjoituksen aikana, ja ne ovat yleensä nopeampia kuin luettelot, koska ne eivät voi muuttua dynaamisesti.

Se määritetään sulkeissa, ()joissa kohteet erotetaan pilkuilla.

 t = (5,'program', 1+3j) 

Voimme käyttää viipalointioperaattoria ()esineiden purkamiseen, mutta emme voi muuttaa sen arvoa.

 t = (5,'program', 1+3j) # t(1) = 'program' print("t(1) = ", t(1)) # t(0:3) = (5, 'program', (1+3j)) print("t(0:3) = ", t(0:3)) # Generates error # Tuples are immutable t(0) = 10 

Tuotos

 t (1) = ohjelma t (0: 3) = (5, 'ohjelma', (1 + 3j)) Seuranta (viimeisin puhelu viimeisin): Tiedosto "test.py", rivi 11, kohdassa t (0) = 10 TypeError: 'tuple' -objekti ei tue kohteen määritystä 

Python-kielet

Merkkijono on Unicode-merkkien sarja. Voimme käyttää yksittäisiä lainausmerkkejä tai kaksoislainauksia merkkijonojen esittämiseen. Moniriviset merkkijonot voidaan merkitä käyttämällä kolminkertaisia ​​lainausmerkkejä '''tai """.

 s = "This is a string" print(s) s = '''A multiline string''' print(s) 

Tuotos

 Tämä on merkkijono Monirivinen merkkijono 

Aivan kuten luetteloa ja tuplaa, viipalointioperaattoria ( )voidaan käyttää merkkijonojen kanssa. Jouset ovat kuitenkin muuttumattomia.

 s = 'Hello world!' # s(4) = 'o' print("s(4) = ", s(4)) # s(6:11) = 'world' print("s(6:11) = ", s(6:11)) # Generates error # Strings are immutable in Python s(5) ='d' 

Tuotos

 s (4) = os (6:11) = maailman jäljitys (viimeisin puhelu viimeksi): Tiedosto "", rivi 11, TypeError: 'str' -objekti ei tue kohteen määritystä 

Python-sarja

Sarja on järjestämätön kokoelma ainutlaatuisia esineitä. Joukko määritetään pilkuilla erotetuilla arvoilla aaltosulkeissa ( ). Sarjan tuotteita ei tilata.

 a = (5,2,3,1,4) # printing set variable print("a = ", a) # data type of variable a print(type(a)) 

Tuotos

 a = (1, 2, 3, 4, 5) 

Voimme suorittaa joukkooperaatioita, kuten unioni, risteys kahdessa sarjassa. Sarjoilla on ainutlaatuiset arvot. Ne eliminoivat kaksoiskappaleet.

 a = (1,2,2,3,3,3) print(a) 

Tuotos

 (1, 2, 3) 

Koska joukko on järjestämätöntä kokoelmaa, indeksoinnilla ei ole merkitystä. Siksi viipalointioperaattori ()ei toimi.

 >>> a = (1,2,3) >>> a(1) Traceback (most recent call last): File "", line 301, in runcode File "", line 1, in TypeError: 'set' object does not support indexing 

Python-sanakirja

Sanakirja on järjestämätön kokoelma avainarvopareja.

Sitä käytetään yleensä, kun meillä on valtava määrä tietoa. Sanakirjat on optimoitu tietojen hakemiseen. Meidän on tiedettävä avain arvon noutamiseksi.

Pythonissa sanakirjat määritellään aaltosulkeissa, ()joista jokainen on muodoltaan pari key:value. Avain ja arvo voivat olla minkä tahansa tyyppisiä.

 >>> d = (1:'value','key':2) >>> type(d) 

Käytämme näppäintä vastaavan arvon noutamiseen. Mutta ei päinvastoin.

 d = (1:'value','key':2) print(type(d)) print("d(1) = ", d(1)); print("d('key') = ", d('key')); # Generates error print("d(2) = ", d(2)); 

Tuotos

 d (1) = arvo d ('avain') = 2 Palautus (viimeisin puhelu viimeisin): Tiedosto "", rivi 9, KeyErrorissa: 2 

Muunnos tietotyyppien välillä

Voimme muuntaa erilaiset tiedot käyttämällä eri tyyppisiä muuntaminen toiminnot kuten int(), float(), str()jne

 >>> float(5) 5.0 

Muuntaminen kelluvasta int-muotoon katkaisee arvon (tekee sen lähemmäksi nollaa).

 >>> int(10.6) 10 >>> int(-10.6) -10 

Muunto merkkijonoon ja siitä tulee sisältää yhteensopivia arvoja.

 >>> float('2.5') 2.5 >>> str(25) '25' >>> int('1p') Traceback (most recent call last): File "", line 301, in runcode File "", line 1, in ValueError: invalid literal for int() with base 10: '1p' 

Voimme jopa muuntaa yhden sekvenssin toiseen.

 >>> set((1,2,3)) (1, 2, 3) >>> tuple((5,6,7)) (5, 6, 7) >>> list('hello') ('h', 'e', 'l', 'l', 'o') 

Sanakirjaan muuntamiseksi jokaisen elementin on oltava pari:

 >>> dict(((1,2),(3,4))) (1: 2, 3: 4) >>> dict(((3,26),(4,44))) (3: 26, 4: 44) 

Mielenkiintoisia artikkeleita...