Listat
Listat
Pythonilla voidaan luoda listoja laittamalla alkioita hakasulkeiden [ ] sisään.
Listan ensimmäisen alkion järjestysluku on 0, toisen alkion järjestysluku on 1 ja niin edelleen. Listan alkioon voidaan viitata kirjoittamalla listan_nimi[järjestysluku].
Välitehtävä
Listan alkiot voidaan käydä läpi käyttäen for-komentoa.
Välitehtävä
Komentoja listoille
Listoja voidaan muokata mm. seuraavilla komennoilla(muokattavan listan nimi on "lista"):
Välitehtävä
Listan alkiot voivat olla myös listoja.
Esimerkki 1. #Luodaan lista, joka sisältää luvut 1-10. lista = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] print (lista) [[$\vdots$]] [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] |
Listan ensimmäisen alkion järjestysluku on 0, toisen alkion järjestysluku on 1 ja niin edelleen. Listan alkioon voidaan viitata kirjoittamalla listan_nimi[järjestysluku].
Esimerkki 2. #Luodaan lista, joka sisältää luvut 1-10 ja tulostetaan listan kolmas alkio. lista = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] print (lista[2]) [[$\vdots$]] 3 |
Välitehtävä
Listan alkiot voidaan käydä läpi käyttäen for-komentoa.
Esimerkki 3. #Luodaan lista, joka sisältää merkkijonot Tupu, Hupu ja Lupu. Tulostetaan merkkijonot for-komennon avulla. nimet = ["Tupu", "Hupu", "Lupu"] for n in nimet: [[$ \ \ \ \ \ $]] print (n) [[$\vdots $]] Tupu Hupu Lupu |
Välitehtävä
Komentoja listoille
Listoja voidaan muokata mm. seuraavilla komennoilla(muokattavan listan nimi on "lista"):
Komento | Merkitys |
lista.append(alkio) | Lisää alkion listaan |
lista.index(alkio) | Etsii alkion järjestysluvun listassa |
lista.count(alkio) | Kertoo, kuinka monta kertaa alkio esiintyy listassa |
lista.remove(alkio) | Poistaa alkion listasta |
lista.sort() | Laittaa listan alkiot aakkos- tai numerojärjestykseen |
lista.reverse() | Kääntää listan alkioiden järjestyksen päinvastaiseksi |
max(lista) | Listan suurin luku |
min(lista) | Listan pienin luku |
Välitehtävä
Esimerkki 4. #Luodaan ohjelma, joka kysyy käyttäjältä lukuja ja lisää ne listaan. Jos käyttäjä antaa nollan tai pienemmän luvun, niin silmukka keskeytyy. lista = [] #Lista on aluksi tyhjä. while True: #Tällä komennolla silmukka pyörii, kunnes break-ehto toteutuu. [[$ \ \ \ \ \ $]] n = int (input ("Anna luku:")) #Kysytään käyttäjältä kokonaisluku n. [[$ \ \ \ \ \ $]] if n < 1: [[$ \ \ \ \ \ $]] [[$ \ \ \ \ \ $]] break #Silmukka keskeytyy jos annettu luku on alle 1. [[$ \ \ \ \ \ $]] lista.append(n) print (lista) print ("Listan suurin luku on", max(lista)) #Tulostetaan listan suurin luku. print ("Listan pienin luku on", min(lista)) #Tulostetaan listan pienin luku. [[$\vdots$]] Anna luku: 6 Anna luku: 3 Anna luku: 134 Anna luku: -2 [6, 3, 134] Listan suurin luku on 134 Listan pienin luku on 3 |
Listan alkiot voivat olla myös listoja.
Esimerkki 5. #Luodaan kolme listaa, jotka lisätään neljännen listan alkioiksi. lista1 = [1, 2, 3] lista2 = [4, 5, 6] lista3 = [7, 8, 9] lista =[lista1, lista2, lista3] print (lista) [[$\vdots$]] [[1, 2, 3], [4, 5 ,6], [7, 8 , 9]] |
Tehtäviä
1. Luo lista, joka sisältää seuraavat luvut (voit copy-pasteta luvut); 4, 7, 2, 67, 45, -2, 0, 1456, 34, -23, 89, 100, 1000, 1, 0.5, -234, 0.01.
a) Tulosta lista.
b) Tulosta listan luvut yksi kerrallaan.
c) Laita luvut suuruusjärjestykseen.
d) Käännä suuruusjärjestys toisinpäin.
e) Lisää listaan luku 123.
f) Tulosta listan kuudes jäsen.
Syventävä tehtävä
2. Luo lista, jossa on luvut 1-100, lisäämättä lukuja yksi kerrallaan.
a) Tulosta lista.
b) Tulosta listan luvut yksi kerrallaan.
c) Laita luvut suuruusjärjestykseen.
d) Käännä suuruusjärjestys toisinpäin.
e) Lisää listaan luku 123.
f) Tulosta listan kuudes jäsen.
Syventävä tehtävä
2. Luo lista, jossa on luvut 1-100, lisäämättä lukuja yksi kerrallaan.