sadje = ("jabolko", "banana", "češnja")
zeleno, rumeno, rdece = sadje
print(zeleno)
print(rumeno)
print(rdece)jabolko
banana
češnja
Nabori so urejeni in nespremenljivi. Definira se jih z običajnimi oklepaji (). Do elementov dostopamo z indeksi od 0 naprej, kot pri seznamih. Naboru ne moremo dodati novih elementov, ko je enkrat ustvarjen. Glej tudi: https://docs.python.org/3/tutorial/datastructures.html#tuples-and-sequences
Vrednosti v naborih lahko “odpakiramo” (ang. unpacking) nazaj v spremenljivke.
sadje = ("jabolko", "banana", "češnja")
zeleno, rumeno, rdece = sadje
print(zeleno)
print(rumeno)
print(rdece)jabolko
banana
češnja
Nabor lahko odpakiramo v manj spremenljivk, kot je elementov nabora, če eni od spremenljivk pred ime dodamo *. V to spremenljivko se bo shranil seznam presežnih elementov. Glej npr. https://www.w3schools.com/python/python_tuples_unpack.asp
Množice niso urejene in so nespremenljive. Definira se jih z zavitimi oklepaji. Prazno množico lahko dobimo tako, da pokličemo funkcijo set(). Vrednosti v množici so unikatne (ne moremo dodati dveh enakih). Do elementov lahko dostopamo z zanko. Nove elemente lahko dodamo z mnozica.add(element). Glej tudi: https://docs.python.org/3/tutorial/datastructures.html#sets
Dober članek o uporabi rekurzije za izračun Fibbonaccijevega zaporedja v Pythonu. Poglavje Using Recursion and a Python Class lahko preskočite. https://realpython.com/fibonacci-sequence-python/
Delo z moduli lepo opisuje dokumentacija (predvsem prva polovica strani).
Če želimo ustvariti seznam s kvadrati celih števil, lahko to naredimo z zanko:
kvadrati = []
for i in range(10):
kvadrati.append(i * i)
print(kvadrati)[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
Na kratko lahko tak seznam ustvarimo z izpeljanim seznamom:
kvadrati2 = [i * i for i in range(10)]
print(kvadrati2)[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
Dodamo lahko tudi pogoj:
poved = 'the rocket came back from mars'
samoglasniki_poved = [i for i in poved if i in 'aeiou']
print(samoglasniki_poved)['e', 'o', 'e', 'a', 'e', 'a', 'o', 'a']
Podoben pristop lahko uporabimo tudi za slovarje in množice.
kvadrati3 = {i: i * i for i in range(10)}
print(kvadrati3){0: 0, 1: 1, 2: 4, 3: 9, 4: 16, 5: 25, 6: 36, 7: 49, 8: 64, 9: 81}
poved = "life, uh, finds a way"
samoglasniki_poved = {i for i in poved if i in 'aeiou'}
print(samoglasniki_poved){'e', 'i', 'u', 'a'}