Python: Vrste podataka, pojmovi, zahtjevi i primjeri

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.0
  • Promjenjivi 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
  • .
  • "p".
  • Budući da su nizovi sekvence, oni podržavaju operacije ulančavanja koristeći znak "+" i ponavljaju koristeći "*":
  • x * 3.
  • "Zdravo, Python, Zdravo, Python! Zdravo, Pythone!
  • x + "123".
  • "Zdravo, Python 123!" Redovi, poput brojeva, su nepromijenjeni. Nijedna od navedenih operacija nije promijenila vrijednost varijable x. Svaki put kada je stvoren novi objekt stringa.

    Popisi

    Popisi u Pythonu prikazani su u obliku uređenih zbirki podataka. Mogu biti bilo koje veličine i sadržavati različite predmete. Budući da su popisi niz sekvenci, primjenjive su metode niza:
  • L = [123, "spam", "var", 1.23] # Popis četiri objekta različitih tipova.
  • len (L) # Broj stavki na popisu.
  • 4.
  • Popisi se odnose na varijabilne tipove podataka u Pythonu. Pomoću funkcija možete mijenjati broj elemenata:
  • L. append

    # Novi se objekt dodaje na kraj popisa.

  • L.
  • [123, «spam», «var», 1.23, 0].
  • L. pop
    # Uklanja element s sredine popisa.
  • "var".
  • Rječnici

    Rječnici su odraz podataka. To je fundamentalno novi tip objekta koji se razlikuje od popisa i redaka. Pristup elementima moguć je samo ključem. Tekst rječnika je u kovrčavim zagradama i sastavljen jeparova ključ /vrijednost:
  • D = {«dan»: «petak», «mjesec»: «prosinac», «godina»: «2017»}.
  • D.
  • {"dan": "petak", "mjesec": "prosinac", "godina": "2017"}.
  • Da biste dobili vrijednost, morate unijeti naziv rječnika s ključem u uglatim zagradama:
  • D ["dan"].
  • "petak".
  • Da biste dodali ključ, morate navesti referencu na vrijednost:
  • D ["time"] = "jutro" # dodaje par ključ /vrijednost.
  • D.
  • {"dan": "petak", "mjesec": "prosinac", "godina": "2017", "vrijeme": ujutro "}.
  • Rječnici pružaju najfleksibilniji tip objekata. Na jezicima niže razine mogu zamijeniti algoritme i strukture podataka. Umjesto ručnog unosa, rječnici omogućuju brzo pretraživanje prema indeksu ili ključu.

    Ispravci

    Ispravci su isti popisi, samo u okruglim zagradama. Mogu pohraniti proizvoljan broj podataka bilo koje vrste, ali podržavaju manji skup operacija. Njihova glavna razlika je neopozivost. Torke osiguravaju integritet i sigurnost objekata, zbog čega se ponekad koriste umjesto popisa tipova u velikim programima. U Pythonu 3, tip podataka tuple ima dvije metode koje su navedene: .index () za dobivanje .count () indeksa elemenata za brojanje identičnih objekata:
  • my_tuple = (123 4).
  • my_tuple.index
    # u drugom položaju je broj 1.
  • 1.
  • my_tuple.count

    # će pokazati koliko jedinica u nizu.

  • 1.
  • To su bili glavni ugrađeni tipovi podataka u Pythonu. Postoje i dodatni objekti koji se mogu smatrati osnovnim. Na primjer, množinski ili nestandardni numerički tipovi, kao što su matrice, vektori, fiksni brojevitočnost. Rad s njima zahtijeva ozbiljno uranjanje u načela matematike i dizajna Pythona.

    Povezane publikacije