= ("jabolko", "banana", "češnja")
sadje = sadje
zeleno, rumeno, rdece 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.
= ("jabolko", "banana", "češnja")
sadje = sadje
zeleno, rumeno, rdece 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):
* i)
kvadrati.append(i print(kvadrati)
[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
Na kratko lahko tak seznam ustvarimo z izpeljanim seznamom:
= [i * i for i in range(10)]
kvadrati2 print(kvadrati2)
[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
Dodamo lahko tudi pogoj:
= 'the rocket came back from mars'
poved = [i for i in poved if i in 'aeiou']
samoglasniki_poved print(samoglasniki_poved)
['e', 'o', 'e', 'a', 'e', 'a', 'o', 'a']
Podoben pristop lahko uporabimo tudi za slovarje in množice.
= {i: i * i for i in range(10)}
kvadrati3 print(kvadrati3)
{0: 0, 1: 1, 2: 4, 3: 9, 4: 16, 5: 25, 6: 36, 7: 49, 8: 64, 9: 81}
= "life, uh, finds a way"
poved = {i for i in poved if i in 'aeiou'}
samoglasniki_poved print(samoglasniki_poved)
{'e', 'i', 'u', 'a'}