LISTE zbirka sa slijednim smjetajem elemenata poredak polje
LISTE
• zbirka sa slijednim smještajem elemenata • poredak, polje, niz (array) Elementi liste: • mogu biti različiti tipovi podataka • može se dinamički povećavati ili smanjivati
STVARANJE LISTE • Nabrajanjem elemenata
• Generiranjem brojeva iz nekog skupa
lista = [izraz for i in range (n)]
funkcija list ( ) – stvara listu od iterabilnog objekta
• Upotrebom neke druge liste
ZBIRKE KAO ITERABILNI OBJEKTI • iteracija – ponavljanje • umjesto funkcije range( ) rabimo • string • listu • n – torku • skup • rječnik
• Opći oblik postupka for element in podatkovna_zbirka: blok naredbi
funkcija set ( ) – od liste čini skup znakova koji se u njoj pojavljuju
funkcija enumerate ( ) – vraća par (indeks elementa, vrijednost elementa)
NASUMIČNE LISTE • randint (a, b) – nasumični cijeli brojevi iz intervala [a, b] • randrange (a, b) – nasumični cijeli brojevi iz intervala [a, b>
• odabire se znak s indeksom koji će nasumično odrediti funkcija randrange( ) • gornja granica je određena duljinom danog stringa s • moguće ponavljanje znakova
PRIDJELJIVANJE IMENA LISTAMA
OPERATORI ZA LISTE Operator Opis djelovanja + nadovezivanje * uvišestručenje in element je sadržan u listi not in element nije sadržan u listi
Napišite program koji će ispisivati najveći i najmanji element liste od 20 elemenata, čiji su element nasumično generirani brojevi od 1 do 100. Rješenje
• Uklanjanje elemenata iz liste
UGRAĐENE FUNKCIJE ZA LISTE Funkcija Opis djelovanja len(L) vraća duljinu liste min(L) vraća najmanju vrijednost elementa liste vraća najveću vrijednost elementa liste max(L)
funkcija shuffle(lista) • u modulu random • nasumično preslagivanje (permutaciju) elemenata liste Zadatak 2. Napisati program koji će generirati listu od 20 elemenata, a elementi će biti brojevi od 1 do 19. Program treba ispisati generiranu listu. Program treba nasumično razmjestiti elemente liste te ispisati tako dobivenu listu.
Kopiranje liste
• random funkcije: • choice(L) – vraća neki nasumični element liste • sample(L, n) – vraća n nasumičnih elemenata liste, svaki element u rezultatu se pojavljuje najviše jednom – n<=len(L) • >>> slova
• umjesto f-je choice? ?
Zadatak 3. Napišite program koji će unositi riječ te će kreirati novu riječ kod koje će prvo i zadnje mjesto ostati isto, a ostala slova će se nasumično ispremještati. Rješenje
- Slides: 30