Datové typy v Pythonu jsou základem, na kterém je programový kód postavený. V jazycích vyšších jazyků jsou data reprezentována jako objekty, nad kterými jsou akce zaznamenávány v kódu. Typizace také určuje soubor přípustných metod a operací.
Jaké typy dat existují
Základní typy dat v Pythonu jsou vložené sbírky. Patří sem čísla, řádky a seznamy. Ale existují objekty vytvořené samostatně pomocí konstrukcí a jazykových knihoven. Obvykle je třeba řešit složité úkoly programu, nikoliv každodenní práci.
Není třeba, aby Python implementoval své objekty. Jazyk nabízí hotové a výkonné vývojové nástroje, které jsou mnohem jednodušší. Umožňují práci s velkým množstvím dat s nejmenšími náklady a časem. Vestavěné typy jsou efektivní datové struktury. Vzhledem k tomu, že jsou implementovány v jazyce C, objekty poskytují vysokou rychlost a výkonnost kódu. Samostatně vytvořené objekty mohou provádět nestandardní úlohy. Například operace zásobníku. Ale jsou mnohem pomalejší než standardní výpisy. Mezi hlavní typy dat v Pythonu patří:
Čísla: 123431415 3 + 4j, desetinná, frakce.
Řádky: "spam", "b'c ax01c".
Seznamy: [1, [2, "tři"], 4].
Slovníky: {"food": "spam"}.
Opravy: (1 "spam", 4 "U").
Soubor set (abc), {a, b}}.
Logické proměnné.
Výše uvedené typy jsou považovány za základní. Při práci s nimi se používají určité syntaxenávrhy. Pro řetězce se jedná o nohy nebo křivky pro slovníky.
Co je dynamické psaní
Python nemá konstrukce pro deklarování proměnných. Objekt je automaticky přiřazen syntaxi v procesu provádění kódu, nazvaném dynamické psaní. Pokud napíšete 678 v prostředí IDLE, vytvoří a vrátí číselný typ dat. Výraz v hranatých závorkách vytvoří seznam v uvozovkách řetězec. Dalším způsobem, jak nastavit typ, je přiřadit hodnotu pomocí znaménka "=":
my_string = "Hello, Python!"
Po generování získá každý objekt určité místo v paměti a soubor vlastních operací. Nejprve však v názvech nebo proměnných neexistují žádné hodnoty nebo pojmy typu. V podstatě jsou to odkazy na objekty. Dynamické psaní proto umožňuje zadat jednu proměnnou pro několik hodnot. Všechny objekty jazyka patří do dvou tříd: proměnné a neměnné datové typy. V Pythonu obsahuje druhá skupina int, float, bool, str, nuple. Tyto objekty nelze změnit, ale některé z nich mohou být transformovány dynamickým typem:
x = "123"
int (x)
123
(x)
123.0
Variabilní objekty zahrnují většinu sekvencí - seznamů, slovníků a množin. Poskytují flexibilní práci s kódem.
Čítače spojení
Veškeré informace o typu nejsou uloženy v názvu, ale v objektu, ke kterému je proměnná odkazována. Jakmile obdrží jméno odkazu na nový objekt, interpret odstraní starý a uvolní paměť.
x = 12 # Přiřadí proměnnou x na číselnou hodnotu.
x = "spam" # x se stává řetězcem.
tisk (x).
spam # 12zcela vymazána a zbývá pouze objekt spamu.
Každý objekt má počítadlo odkazů, následovaný interpretem. Pokud jejich číslo dosáhne nuly, objekt je neodvolatelně odstraněn a místo, které zaujme, se vrací zpět do fondu volné paměti. Toto chování usnadňuje práci programátoru a zkracuje čas vytvoření kódu. Vývojář nemusí psát samostatně pokyny pro zničení nepotřebných objektů.
Ve srovnání s jazyky Java nebo C ++ je syntaxe v Pythonu trochu jednodušší. Díky dynamickému psaní kód má mnohem menší prostor, je snadné a příjemné pracovat. Navzdory zjevné jednoduchosti a flexibilitě je Python jazykem s přísnými pravidly pro každý typ. Metody a operace jsou použitelné na jeden typ objektů, které jsou vůči jinému nepřijatelné:
f = «jablko».
s = "třešně".
f * s # pokus o násobení řádku zobrazí chybovou zprávu.
Čísla
Nejjednodušší datová skupina. K práci s čísly může každý ještě ze školy. Komplexní výpočty z vyšších matematických oborů k aplikačnímu programátoru jsou nepravděpodobné. Ve většině případů jsou standardní aritmetické výpočty dostačující u následujících operátorů:
přírůstek: var1 + var2;
odčítání: var1-var2;
násobení: var1 * var2;
distribuce: var1 /var2;
zbytek frakce: var1% var2;
Celá část divize: var1 //var2.
Tento druh je rozdělen do celých a reálných objektů. První skupina obsahuje negativní a kladné celé celé číslo int a logické objekty bool. Typ dat int je implicitně zapsán v desítkové soustavěčíselný systém ve formě digitálních znaků. Pokud je to žádoucí, mohou být zapsány jako binární, osmičkové nebo šestnáctkové soustavě předponu 0b, 0 ° a 0 x.
Vestavěné typy boolů mají dvě hodnoty: True and False. Jedná se o předdefinované číselné proměnné. Pravda je 1 a False - 0. Pokud interpret napsat pravdivý + 5 vůle 6. Pomocí designérského jazyka jakéhokoli objektu ze standardní knihovny mohou být přeměněny na typu bool.
float reálných čísel a komplex
Python datového typu float číselných literalu používat s volitelným bodem nebo exponenciální, 1231, 314, 1040 e-e + 210. Chcete-li pracovat s plovákem uplatňovat stejné standardní matematické operátory pro celá čísla int. V případě potřeby můžete provádět typy dat konverze. Python používá pro tuto funkci int () a kolo ():
X = 1,8.
y = 1,8.
int (x).
1 # function int () odmítá zlomkovou část.
kolo (y).
2 # funkce kolo () se zaokrouhlují na celé číslo.
Komplexní typ je složité číslo sestávající ze dvou hodnot float. První je platná část a je k dispozici jako atribut .real. Druhá část se nazývá pomocí .imag a představuje imaginární část objektu. Literály komplexní čísla viz následovně:
my_number = -89,5 + 2125 J
my_number.real, my_number.imag
(-8.952,125)
Komplexní čísla mohou měnit v datových typů Python Operace pro konverzi složité objekty nemožné jakýkoli pokus tak učinit okamžitě způsobí chybu.
linie
Čára - předmět určen k ukládání posloupnost znakůUnicode. Obsahuje textové a číselné informace. Lineární čáry jsou vždy citáty. Řádky mají délku, kterou lze vypočítat funkcí len ()
x = "Hello, Python!".
Len (x).
18.
Každý prvek má svůj vlastní index nebo polohu, kterou lze získat:
x .
"v".
x
.
"p". Protože řetězce jsou sekvence, podporují operace zřetězení pomocí znaménka "+" a opakují se pomocí znaku "*":
x * 3.
"Hello, Python, Hello, Python! Dobrý den, Python! "
x + "123".
"Dobrý den, Python 123!"
Řádky, stejně jako čísla, jsou nezměněné typy. Žádná z uvedených operací nezměnila hodnotu proměnné x. Pokaždé, když byl vytvořen nový řetězec.
Seznamy
Seznamy v Pythonu jsou prezentovány formou objednaných sbírek dat. Mohou být jakékoliv velikosti a obsahují různé předměty. Protože seznamy jsou sekvence sekvencí, použitelné metody string jsou:
L = [123, "spam", "var", 1.23] # Seznam čtyř objektů různých typů.
len (L) # Počet položek v seznamu.
4.
Seznamy se týkají proměnných typů dat v Pythonu. Pomocí funkcí můžete změnit počet prvků:
L. append
# Na konec seznamu je přidán nový objekt.
L.
[123, "spam", "var", 1,23, 0].
L. pop
# Odstraní prvek ze středu seznamu.
"var".
Slovníky
Slovníky jsou odrazem dat. Jedná se o zásadně nový typ objektu, který se liší od seznamů a řádků. Přístup k prvkům je možný pouze pomocí klíče. Text slovníku je v závorkách a je složenpair "key-value":
D = { «Day“, "pátek", "měsíc", "prosinec", "year", "2017"}.
Slovníky poskytují nejvíce flexibilní typy objektů. V jazycích nízké úrovně mohou nahradit algoritmy a datové struktury. Místo psaní ručně poskytují slovníky rychlé vyhledávání podle indexů nebo klíčů.
Opravy
Opravy jsou stejné seznamy pouze v kulatých závorkách. Mohou ukládat libovolný počet dat jakéhokoli typu, ale podporují menší soubor operací. Jejich hlavní rozdíl je neodvolatelnost. Jednotky poskytují celistvost a bezpečnost objektů, což je důvod, proč se někdy používají namísto seznamu typů ve velkých programech. 3 V Python typu n-tice dat má dvě metody, které jsou uvedeny: .index () získat .count indexového prvku () spočítat počet identických předmětů:
my_tuple = (4 123).
my_tuple.index
# ve druhé poloze, obrázek 1.
1
my_tuple.count
# ukazují, kolik jednotek v pořadí.
1.
Jedná se o hlavní vestavěné datové typy v Pythonu. Existují také další objekty, které lze považovat za základní. Například množné nebo nestandardní číselné typy, jako jsou matice, vektory, pevné číslapřesnost Práce s nimi vyžaduje vážné ponoření do principů matematiky a designu Pythonu.