Úvod a seznamy

Datové typy v Pythonu

Jason Myers

Instructor

Datové typy

  • Systém datových typů určuje možnosti jazyka
  • Porozumění datovým typům ti dává výhodu při práci s daty
Datové typy v Pythonu

Kontejnerové sekvence

  • Uchovávají jiné datové typy
  • Používají se pro agregaci, řazení a další operace
  • Mohou být měnitelné (list, set) nebo neměnitelné (tuple)
  • Iterovatelné
Datové typy v Pythonu

Seznamy

  • Uchovávají data v pořadí, ve kterém byla přidána
  • Měnitelné
  • Index
Datové typy v Pythonu

Přístup k jednotlivým prvkům seznamu

cookies = ['chocolate chip', 'peanut butter', 'sugar']
cookies.append('Tirggel')
print(cookies)
['chocolate chip', 'peanut butter', 'sugar', 'Tirggel']
print(cookies[2])
sugar
Datové typy v Pythonu

Spojování seznamů

  • Pomocí operátorů můžeš spojit dva seznamy do nového
cakes = ['strawberry', 'vanilla']

desserts = cookies + cakes

print(desserts)
['chocolate chip', 'peanut butter', 'sugar', 'Tirggel', 'strawberry', 'vanilla']
  • Metoda .extend() sloučí seznam s jiným seznamem na jeho konci
cookies.extend(cakes)
Datové typy v Pythonu

Hledání prvků v seznamu

  • Metoda .index() najde pozici prvku v seznamu
position = cookies.index('sugar')

print(position)
2
Datové typy v Pythonu

Odebírání prvků ze seznamu

  • Metoda .pop() odstraní prvek ze seznamu a umožní ho uložit
name = cookies.pop(position)

print(name)
sugar
print(cookies)
['chocolate chip', 'peanut butter', 'Tirggel']
Datové typy v Pythonu

Procházení seznamů

  • List comprehension je běžný způsob, jak projít seznam a provést na jeho prvcích nějakou akci
titlecase_cookies = [cookie.title() for cookie in cookies]
print(titlecase_cookies)
Chocolate Chip
Peanut Butter
Tirggel
Datové typy v Pythonu

Řazení seznamů

  • Funkce sorted() seřadí data číselně nebo abecedně a vrátí nový seznam
print(cookies)
['chocolate chip', 'peanut butter', 'Tirggel']
sorted_cookies = sorted(cookies)

print(sorted_cookies)
['Tirggel', 'chocolate chip', 'peanut butter']
Datové typy v Pythonu

Pojďme cvičit!

Datové typy v Pythonu

Preparing Video For Download...