Miksi Pythonissa dictionary luodaan aaltosulkeilla { }, mutta yksittäiseen elementtiin viitataan hakasuluilla [ ]?
Sanakirja = {'koira':'dog', 'kissa':'cat'}
a = Sanakirja['kissa']
Järjetöntä.
Kommentit (5)
Luodaan objekti: {}
Elementtiin viitataan: []
Luomisessa pitää jotenkin erottaa se, ollaanko luomassa sanakirjaa (dictionary), listaa vai monikkoa (tuple). Erilaiset sulut ovat tässä kätevä tapa.
Yksittäisiin elementteihin taas viitataan erilaisissa rakenteissa (myös merkkijonoissa) aina hakasuluilla. Ei tuohon ole muuta syytä kuin se, että kielen määrittelijät ovat pitäneet tuota loogisempana ja kätevämpänä tapana.
Vierailija kirjoitti:
Luodaan objekti: {}
Elementtiin viitataan: []
Samalla systeemillä viitataan mm. listan elementtiin eli lista[2] olisi listan alkio indeksillä 2 eli kolmas alkio. Sama tyyli on käytössä mm. matemaattisissa kirjastoissa joissa taulukkorakenteisiin viitataan taulukko[1][2] tyylillä, eli tuossa on kaksiulotteinen taulukko jossa suluissa in rivi/sarake indeksit. Kirjastoissa indeksit on muutakin kuin numeroita, siksi niihin voi viitata esim. merkkijonolla kuten aloittajan esimerkissä.
Joitain ihmeteltävää sullekin