Python datatyper

I denne opplæringen vil du lære om forskjellige datatyper du kan bruke i Python.

Datatyper i Python

Hver verdi i Python har en datatype. Siden alt er et objekt i Python-programmering, er datatypene faktisk klasser og variabler er forekomst (objekt) av disse klassene.

Det finnes forskjellige datatyper i Python. Noen av de viktige typene er oppført nedenfor.

Python-tall

Heltall, flytende tall og komplekse tall faller inn under kategorien Python-tall. De er definert som int, floatog complexklasser i Python.

Vi kan bruke type()funksjonen til å vite hvilken klasse en variabel eller en verdi tilhører. Tilsvarende brukes isinstance()funksjonen til å sjekke om et objekt tilhører en bestemt klasse.

 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)) 

Produksjon

5 er av type 2.0 er av type (1 + 2j) er kompleks nummer? ekte

Heltall kan være av hvilken som helst lengde, det er bare begrenset av tilgjengelig minne.

Et flytende tall er nøyaktig opptil 15 desimaler. Heltall og flytende punkter er atskilt med desimaltegn. 1 er et helt tall, 1.0 er et flytende tall.

Komplekse tall skrives i form, x + yjhvor x er den virkelige delen og y er den imaginære delen. Her er noen eksempler.

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

Legg merke til at floatvariabelen b ble avkortet.

Python-liste

List er en ordnet sekvens av varer. Det er en av de mest brukte datatypene i Python og er veldig fleksibel. Alle elementene i en liste trenger ikke å være av samme type.

Å erklære en liste er ganske rett frem. Elementer atskilt med komma er lukket innenfor parentes ( ).

 a = (1, 2.2, 'python') 

Vi kan bruke skiveroperatøren ( )til å trekke ut en vare eller en rekke varer fra en liste. Indeksen starter fra 0 i Python.

 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:)) 

Produksjon

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

Lister er foranderlige, noe som betyr at verdien av elementene i en liste kan endres.

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

Produksjon

 (1, 2, 4) 

Python Tuple

Tuple er en ordnet sekvens av varer som en liste. Den eneste forskjellen er at tuplene er uforanderlige. Tuples en gang opprettet kan ikke endres.

Tuples brukes til å skrivebeskytte data og er vanligvis raskere enn lister, da de ikke kan endres dynamisk.

Det er definert innenfor parentes ()der elementene er atskilt med komma.

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

Vi kan bruke skiveroperatøren ()til å trekke ut varer, men vi kan ikke endre verdien.

 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 

Produksjon

 t (1) = program t (0: 3) = (5, 'program', (1 + 3j)) Sporing (siste anrop sist): Fil "test.py", linje 11, i t (0) = 10 TypeError: 'tuple' -objektet støtter ikke varetildeling 

Python-strenger

Streng er sekvensen av Unicode-tegn. Vi kan bruke enkle anførselstegn eller doble anførselstegn for å representere strenger. Flerstrengede strenger kan betegnes ved å bruke trippel anførselstegn, '''eller """.

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

Produksjon

 Dette er en streng En flerlinjesnor 

Akkurat som en liste og tupel kan skiveroperatøren ( )brukes med strenger. Strenger er imidlertid uforanderlige.

 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' 

Produksjon

 s (4) = os (6:11) = world Traceback (siste samtale sist): Fil "", linje 11, i TypeError: 'str' objekt støtter ikke varetildeling 

Python-sett

Set er en uordnet samling av unike gjenstander. Sett er definert av verdier atskilt med komma inne i parentes ( ). Varer i et sett bestilles ikke.

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

Produksjon

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

Vi kan utføre settoperasjoner som fagforening, skjæringspunkt på to sett. Sett har unike verdier. De eliminerer duplikater.

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

Produksjon

 (1, 2, 3) 

Siden sett er uordnet samling, har indeksering ingen betydning. Derfor ()fungerer ikke skiveroperatøren.

 >>> 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 Dictionary

Ordbok er en uordnet samling av nøkkelverdipar.

Det brukes vanligvis når vi har enorme mengder data. Ordbøker er optimalisert for å hente data. Vi må vite nøkkelen for å hente verdien.

I Python er ordbøker definert innen klammeparenteser ()med hvert element som et par i skjemaet key:value. Nøkkel og verdi kan være av hvilken som helst type.

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

Vi bruker nøkkel for å hente den respektive verdien. Men ikke omvendt.

 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)); 

Produksjon

 d (1) = verdi d ('nøkkel') = 2 Spor tilbake (siste anrop sist): Fil "", linje 9, i KeyError: 2 

Konvertering mellom datatyper

Vi kan konvertere mellom ulike datatyper ved å bruke annen type konvertering funksjoner som int(), float(), str(), etc.

 >>> float(5) 5.0 

Konvertering fra float til int vil avkorte verdien (gjøre den nærmere null).

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

Konvertering til og fra streng må inneholde kompatible verdier.

 >>> 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' 

Vi kan til og med konvertere en sekvens til en annen.

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

For å konvertere til ordbok, må hvert element være et par:

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

Interessante artikler...