Tipovi podataka u Pythonu temelj su na kojima je izgrađen programski kod. U jezicima na visokoj razini, podaci su predstavljeni kao objekti nad kojima su akcije zabilježene u kodu. Tipizacija također određuje skup dopuštenih metoda i operacija.
Koje vrste podataka postoje
Osnovne vrste podataka u Pythonu su ugrađene zbirke. To uključuje brojeve, retke i popise. Ali postoje objekti stvoreni samostalno, koristeći konstrukte i jezične knjižnice. Obično su potrebni za rješavanje složenih programskih zadataka, a ne u svakodnevnom radu.
Nema potrebe da Python implementira svoje objekte. Jezik nudi gotove i moćne razvojne alate koji su mnogo lakši za korištenje. Oni vam omogućuju da radite s velikom količinom podataka, uz najmanji trošak truda i vremena. Ugrađeni tipovi su učinkovite strukture podataka. Zbog činjenice da su implementirani u C, objekti pružaju veliku brzinu i učinkovitost kodova. Samouređeni objekti mogu obavljati nestandardne zadatke. Na primjer, operacije slaganja. Ali oni su mnogo sporiji od standardnih popisa. Glavne vrste podataka ugrađene u Python uključuju:
Brojeve: 123431415 3 + 4j, Decimalni, Frakcija. Crte: "spam", "b'c ax01c". Popis: [1, [2, "tri"], 4]. Rječnici: {"hrana": "spam"}. Ispravci: (1 "spam", 4 "U"). Skup skupa (abc), {a, b}}. Logičke varijable. Gornji tipovi smatraju se osnovnim. Pri radu s njima koriste se određene sintaksedizajn. Za nizove, to su noge ili kovrčave zagrade za rječnike.
Što je dinamičko tipkanje
Python nema konstrukte za deklariranje varijabli. Objektu se automatski dodjeljuje sintaksa u procesu izvršavanja koda, naziva se dinamička tipizacija. Ako napišete 678 u IDLE okruženju, on će stvoriti i vratiti brojčani tip podataka. Izraz u uglatim zagradama stvorit će popis, u navodnicima, niz znakova. Drugi način postavljanja tipa je dodijeliti vrijednost pomoću znaka "=":my_string = "Zdravo, Python!"Nakon generiranja, svaki objekt prima određeno mjesto u memoriji i skup vlastitih operacija. Ali prvo, u imenima ili varijablama, ne postoje vrijednosti ili pojmovi tipa. U biti, to su reference na objekte. Stoga dinamičko tipkanje omogućuje određivanje jedne varijable za nekoliko vrijednosti. Svi objekti jezika pripadaju dvije klase: varijabli i nepromjenjivi tipovi podataka. U Pythonu, druga grupa uključuje int, float, bool, str, tuple. Ti se objekti ne mogu mijenjati, ali neki od njih se mogu transformirati dinamičkim tipkanjem:
x = "123" int (x) 123 float (x) 123.0Promjenjivi objekti uključuju većinu popisa sekvenci, rječnika i skupova. Oni pružaju fleksibilan rad kodova.
Brojači veza
Sve informacije o tipu pohranjuju se ne u imenu, već u objektu na koji se odnosi varijabla. Čim primi ime veze na novi objekt, tumač uklanja stari, oslobađajući memoriju.
x = 12 # Dodjeljuje varijablu x numeričkoj vrijednosti. x = "spam" # x postaje niz. print (x). spam # 12potpuno izbrisan i ostavljen je samo spam objekt. Svaki objekt ima brojač veza koji slijedi tumač. Ako njihov broj dosegne nulu, objekt se neopozivo briše, a mjesto koje zauzima vraća se u bazen slobodne memorije. Takvo ponašanje olakšava rad programera i skraćuje vrijeme izrade koda. Programer ne mora posebno napisati upute za uništavanje nepotrebnih objekata.
U usporedbi s Java ili C ++, sintaksa u Pythonu je malo lakša. Zahvaljujući dinamičkom tipkanju, kod zauzima puno manje prostora, s njim je lako i ugodno raditi. No, unatoč prividnoj jednostavnosti i fleksibilnosti, Python je jezik sa strogim pravilima za svaki tip. Metode i operacije primjenjuju se na jedan tip objekata koji su u odnosu na drugi neprihvatljivi:
f = «jabuka». s = "trešnja". f * s # pokušaj množenja retka prikazat će poruku o pogrešci. Brojevi
Najjednostavnija za razumijevanje grupa podataka. Za rad s brojevima svatko može i dalje iz škole. Malo je vjerojatno da će biti potrebni složeni izračuni od više matematike do aplikacijskih programera. U većini slučajeva, standardni aritmetički izračuni su dovoljni sa sljedećim operatorima:
dodatak: var1 + var2; oduzimanje: var1-var2; množenje: var1 * var2;distribucija: var1 /var2; ostatak frakcije: var1% var2; Cijeli dio podjele: var1 //var2.Ova vrsta je podijeljena na cjelobrojne i stvarne objekte. Prvu skupinu čine negativni i pozitivni cijeli brojevi inte i logički objekti bool. Tip podataka int je prema zadanim postavkama pisan u decimalnom oblikusustav brojeva u obliku digitalnih znakova. Po želji, mogu se unijeti kao binarni, oktalni ili heksadecimalni brojevi s prefiksom 0b, 0o i 0x.
Ugrađeni tipovi boola uzimaju dvije vrijednosti: True i False. To su unaprijed definirane numeričke varijable. True je 1 i False - 0. Ako interpreter napiše True + 5, izlaz će 6. Koristeći jezične konstrukcije, bilo koji objekt iz standardne knjižnice može se pretvoriti u bool tip.
Stvarni brojevi plutajućih i složenih
Python koristi numeričku literalnu vrijednost s decimalnom točkom ili opcionalnim eksponentom za vrstu podataka float: 1231., 314 e-1040 e + 210. Za rad s float-om koristite iste standardne matematičke operatore kao i za integers int. Ako je potrebno, možete izvesti tipove podataka pretvorbe. U Pythonu se za to koriste int () i round () funkcije:
x = 1.8. y = 1.8. int (x). 1 # funkcija int () odbacuje frakcijski dio. krug (y). 2 # funkcija round () zaokružena je na cijeli broj.Složeni tip je složeni broj koji se sastoji od dvije vrijednosti s plovkom. Prvi je valjan dio i dostupan je kao atribut .real. Drugi dio se naziva s .imag i predstavlja imaginarnu komponentu objekta. Brojevi kompleksnih brojeva upisuju se na sljedeći način:
my_number = -89.5 + 2125 J piton. Operacije pretvorbe za složene objekte nisu moguće, svaki pokušaj da se to učini odmah će pokrenuti poruku o pogrešci.
Linije
Niz je objekt namijenjen pohranjivanju niza znakovaUnicode. Sadrži tekstualne i numeričke informacije. Linearne linije su uvijek citati. Redovi imaju duljinu koja se može izračunati pomoću funkcije len ():
x = "Zdravo, Python!". len (x). 18.Svaki element ima svoj indeks ili poziciju po kojoj se može dobiti:
x
. "u". x .