6. Listat

Listat

Pythonilla voidaan luoda listoja laittamalla alkioita hakasulkujen [ ] sisään pilkuilla erotettuna.

Esimerkki 1. 


Listan ensimmäisen alkion järjestysluku on nolla, toisen alkion järjestysluku on yksi ja niin edelleen. Tiettyyn alkioon listassa voidaan viitata sen järjestysluvulla komennolla listan_nimi[järjestysluku].

Esimerkki 2.


Tehtävä 1.
Ohjelmassa on luotu lista nimeltä sanat. Tulosta listasta sanoja, että saat muodostettua järkevän lauseen.


Listan kaikkien alkioiden tulostaminen tapahtuu kätevästi for-komennolla.

Esimerkki 3. 


Esimerkki 4.


Alla olevassa listassa on lueteltu eräitä listoihin liittyviä komentoja.

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

Esimerkki 5.


Tehtävä 2.


Esimerkki 6.

Tehtävät

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.

2. Alla on listattu 50 satunnaista kokonaislukua. Käytä listoihin liittyviä komentoja saadaksesi selville alla olevat kysymykset.

-7287,	-686,	-7637,	4905,	306,	1975,	-8594,	-3248,	8684,	3983	-8201,	-2776,	6875,	-9056,	-6554,	7631,	-8915,	9599,	-2260,	7891,	7100,	-8092,	2775,	4003,	-5936,	1042,	-2305,	-3722,	5822,	-365,	-1089,	6604,	396,	-8390,	-2292,	-4942,	-8803,	-4806,	698,	889,	-2673,	-9344,	-4186,	-9297,	-2869,	-4968,	-2025,	-2800,	9257,	4202
a) Mikä on listan suurin alkio?

b) Mikä on listan pienin alkio?

c) Kuinka mones luku listassa on luku 6604?

3.* Luo lista, jossa on luvut 1-1000, lisäämättä lukuja yksi kerrallaan.

4.* Tee ohjelma, joka kysyy käyttäjältä sanoja ja lisää ne listaan, kunnes käyttäjä antaa saman sanan uudestaan.