FLOSS Manuals

 English |  Español |  Français |  Italiano |  Português |  Русский |  Shqip

Komentorivin perusteet

Python

Python

Python on ohjelmointikieli, jolla voi tehdä tehtäviä, jotka olisivat vaikeita tai hankalia komentorivillä. Python on oletusarvoisesti mukana useimmissa GNU/Linux -jakeluissa. Aivan kuin komentorivillä, voit käyttää Pythonia kirjoittamalla yksittäisi komentoja, tai voit luoda skriptitiedoston. Jos tahdot kirjoittaa yksittäisi komentoja, aloita Python-tulkki kirjoittamalla komento "python".

$ python >>> 10 + 10
20 

 

Poistuaksesi interaktiivisesta Python-istunnosta, käytä näppäinkomentoa Ctrl + d.

Kirjoittaaksesi monen rivin skriptin Pythonissa, jonka voit suorittaa interaktiivisen Python-konsolin ulkopuolella, joudut ensin luomaan tiedoston ja tallentamaan sen ".py"-loppupäätteellä tiedostonimen lopussa. Voit käyttää mitä tahansa tekstieditoria luodaksesi tämän tiedoston -- Emacsia, Vimiä, Gedittiä, tai mikä tahansa suosikkisi onkin. Skripti voi näyttää tältä:

a = 1 + 2
print a

Tässä esimerkissä luomme muuttujan "a", joka tallentaa laskutoimituksen "1 + 2" tuloksen. Sen jälkeen se käyttää "print"-komentoa tulostaakseen tuloksen, jonka pitäisi olla 3. Tallennamme tämän tiedoston nimellä "eka.py", ja voimme suorittaa sen komentoriviltä.

$ python eka.py
3

Python-ohjelma tulosti "3", aivan kuin odotimme. Tietysti voimme tehdä Pythonilla hyödyllisempiä asioita. Voimme esimerkiksi katsoa kaikkia nykyisen hakemiston tiedostoja. 

$ python
>>> import os
>>> os.listdir('.')
['muistio.txt', 'lueminut.txt', 'eka.py']

Tässä tuomme ohjelmaan standardikirjaston "os", jossa on käyttöjärjestelmän funktioita. Kutsumme listdir-funktiota palauttaaksemme listan nykyisen hakemiston tiedostoista. Tuomme hakemiston nimen merkkijonona (suljettuna heittomerkkeihin); yksittäinen piste viittaa nykyiseen hakemistoon.

Yritetäänpä tehdä jotain näillä tiedostoilla -- tässä on tapa löytää kaikki hakemiston ".py"-tiedostot.

>>> files = os.listdir('.')
>>> files ['muistio.txt', 'lueminut.txt', 'eka.py']
>>> [file for file in files if '.py' in file] ['eka.py']

Yllä käytämme voimakasta rakennetta, jota kutsutaan listan ymmärtämiseksi, luodaksemme uuden listan muuntamalla ja suodattamalla listan. Alla on yksinkertainen mutta monisanaisempi tapa valita kaikki tiedostot, joissa on merkkijono ".txt". 

>>> for file in files: ... if '.txt' in file: ... print file ... 
muistio.txt
lueminut.txt

Sisennystä vaaditaan Pythonissa. Sisennys kertoo Python-tulkille, mitä "for"-silmukkaan sisällytetään ja mitä sisällytetään "if"-lauseeseen. Lisäksi sinun täytyy painaa rivinvaihtoa viimeisten kolmen pisteen lopussa kertoaksesi Python-tulkille, että olet kirjoittanut komennot. 

Voimme myös käyttää komentorivin koodia Pythonissa lähettämällä sen "os.system" -funktiolle. Jos esimerkiksi tahdomme poistaa kaikki ".txt"-tiedostot, voimme tehdä näin: 

>>> for file in files: ... if '.txt' in file: ... cmd = 'rm ' + file ... os.system(cmd)
...

Yllä loimme päätekomennon "cmd" Python-merkkijonolla yhdistämällä (käyttämällä "+"-operaattoria) merkkijonot "rm" ja tiedostonimen, jonka jälkeen lähetämme sen "os.system"-funktiolle. Nyt voimme tarkastaa että tiedostot on poistettu.

>>> os.system('ls')
eka.py

Lisää tietoa Pythonista

Pythonin verkkosivu on http://www.python.org ja se sisältää paljon tietoa ja dokumentaatiota Python-kielestä. Jos olet aloitteleva ohjelmoija, Jeffrey Elknerin, Allen B. Downeyn ja Chris Meyersin kirja "How to Think Like a Computer Scientist" sivulla http://openbookproject.net/thinkCSpy/index.html on hyvä paikka aloittaa.

There has been error in communication with Booktype server. Not sure right now where is the problem.

You should refresh this page.