Pythonin alkeet Syksy 2010 Pythonin perusteet: Ohjelmointi, skriptaus ja Python



Samankaltaiset tiedostot
Tähtitieteen käytännön menetelmiä Kevät 2009 Luento 4: Ohjelmointi, skriptaus ja Python

Tähtitieteen käytännön menetelmiä Kevät 2009 Luento 5: Python

Ohjelmoinnin peruskurssi Y1

Ohjelmoinnin peruskurssi Y1

Ohjelmoinnin peruskurssi Y1

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python

Kemian tekniikan kandidaattiohjelman ohjelmointikurssi (5 op)

AS C-ohjelmoinnin peruskurssi 2013: C-kieli käytännössä ja erot Pythoniin

Ohjelmoinnin perusteet Y Python

Java-kielen perusteet

Ohjelmointitaito (ict1td002, 12 op) Kevät Java-ohjelmoinnin alkeita. Tietokoneohjelma. Raine Kauppinen

Ohjelmoinnin peruskurssi Y1

Ohjelmoinnin peruskurssi Y1

Ohjelmoinnin perusteet Y Python

8. Näppäimistöltä lukeminen 8.1

P e d a c o d e ohjelmointikoulutus verkossa

Ohjelmointitaito (ict1td002, 12 op) Kevät Java-ohjelmoinnin alkeita. Tietokoneohjelma. Raine Kauppinen

linux: Ympäristömuuttujat

Ohjelmoinnin perusteet Y Python

Luvuilla laskeminen. Esim. 1 Laske

Osoitin ja viittaus C++:ssa

Ohjelmoinnin perusteet Y Python

linux: komennoista linux linux

ATK tähtitieteessä. Osa 2 - IDL perusominaisuudet. 12. syyskuuta 2014

8. Näppäimistöltä lukeminen 8.1

17. Javan omat luokat 17.1

Ohjelmointi 1 Taulukot ja merkkijonot

PHP tehtävä 3 Atte Pekarinen TIKT13A

Python-ohjelmointi Harjoitus 2

Tähtitieteen käytännön menetelmiä Kevät 2009 Luento 6: Python

C-ohjelmoinnin peruskurssi. Pasi Sarolahti

17. Javan omat luokat 17.1

ELM GROUP 04. Teemu Laakso Henrik Talarmo

15. Ohjelmoinnin tekniikkaa 15.1

Java-kielen perusteet

Sisällys. 1. Omat operaatiot. Yleistä operaatioista. Yleistä operaatioista

L2: linux linux: Komentotulkki

12 Mallit (Templates)

Ohjelmoinnin perusteet Pythonilla. Teemu Sirkiä, 2015

20. Javan omat luokat 20.1

Sisällys. 20. Javan omat luokat. Java API. Pakkaukset. java\lang

1. Omat operaatiot 1.1

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet Y Python

Lyhyt kertaus osoittimista

\+jokin merkki tarkoittaa erikoismerkkiä; \n = uusi rivi.

Informaatioteknologian laitos Olio-ohjelmoinnin perusteet / Salo

linux: Ympäristömuuttujat

815338A Ohjelmointikielten periaatteet

Tyyppejä ja vähän muutakin. TIEA341 Funktio ohjelmointi 1 Syksy 2005

815338A Ohjelmointikielten periaatteet Harjoitus 5 Vastaukset

15. Ohjelmoinnin tekniikkaa 15.1

Ohjelmoinnin perusteet Y Python

Johdatus Ohjelmointiin

Ohjelmoinnin peruskurssi Y1

4. Luokan testaus ja käyttö olion kautta 4.1

Ohjelmassa muuttujalla on nimi ja arvo. Kääntäjä ja linkkeri varaavat muistilohkon, jonne muuttujan arvo talletetaan.

Harjoitustyö: virtuaalikone

System.out.printf("%d / %d = %.2f%n", ekaluku, tokaluku, osamaara);

Ohjelmoinnin perusteet Y Python

4. Lausekielinen ohjelmointi 4.1

linux: Prosessit kill PID lopettaa prosessin PID, jos siihen on oikeudet Ctrl + c lopettaa aktiivisen prosessin L7: linux

Kääreluokat (oppikirjan luku 9.4) (Wrapper-classes)

Ohjelmointi 2. Jussi Pohjolainen. TAMK» Tieto- ja viestintäteknologia , Jussi Pohjolainen TAMPEREEN AMMATTIKORKEAKOULU

Ohjelmoinnin peruskurssien laaja oppimäärä

Ohjelmoinnin perusteet Y Python

linux: komennoista linux linux

Ohjelmoinnin alkeita Python-kielellä

Java-kielen perusteet

Ohjelmoinnin peruskurssi Y1

Neljän alkion kunta, solitaire-peli ja

Pedacode Pikaopas. Java-kehitysympäristön pystyttäminen

Ohjelmointikielet ja -paradigmat 5op. Markus Norrena

Taulukot. Jukka Harju, Jukka Juslin

Harjoitus 3 (viikko 39)

Tutoriaaliläsnäoloista

C++ rautaisannos. Kolme tapaa sanoa, että tulostukseen käytetään standardikirjaston iostreamosassa määriteltyä, nimiavaruuden std oliota cout:

Työ tehdään itsenäisesti yhden hengen ryhmissä. Ideoita voi vaihtaa koodia ei.

3.1 Mitä tarkoittaan heredoc? Milloin sitä kannattaa käyttää? Kirjoita esimerkki sen käyttämisestä.

Ohjelmoinnin peruskurssien laaja oppimäärä

Tieto- ja tallennusrakenteet

Ohjelmoinnin peruskurssi Y1

Matriisit ovat matlabin perustietotyyppejä. Yksinkertaisimmillaan voimme esitellä ja tallentaa 1x1 vektorin seuraavasti: >> a = 9.81 a = 9.

Kirjoita oma versio funktioista strcpy ja strcat, jotka saavat parametrinaan kaksi merkkiosoitinta.

Ohjelmoinnin perusteet Y Python

Olkoon funktion f määrittelyjoukkona reaalilukuväli (erityistapauksena R). Jos kaikilla määrittelyjoukon luvuilla x 1 ja x 2 on voimassa ehto:

7/20: Paketti kasassa ensimmäistä kertaa

1. Olio-ohjelmointi 1.1

Ohjelmointi 1 / syksy /20: IDE

Ohjelmoinnin peruskurssi Y1

Perinteiset tietokoneohjelmat alkavat pääohjelmasta, c:ssä main(), jossa edetään rivi riviltä ja käsky käskyltä.

815338A Ohjelmointikielten periaatteet Harjoitus 3 vastaukset

Harjoitus 1 -- Ratkaisut

TIEA341 Funktio-ohjelmointi 1, kevät 2008

C-ohjelmoinnin peruskurssi. Pasi Sarolahti

JAVA-PERUSTEET. JAVA-OHJELMOINTI 3op A JAVAN PERUSTEET LYHYT KERTAUS JAVAN OMINAISUUKSISTA JAVAN OMINAISUUKSIA. Java vs. C++?

Pong-peli, vaihe Aliohjelman tekeminen. Muilla kielillä: English Suomi. Tämä on Pong-pelin tutoriaalin osa 3/7. Tämän vaiheen aikana

Transkriptio:

Pythonin alkeet Syksy 2010 Pythonin perusteet: Ohjelmointi, skriptaus ja Python 8. marraskuuta 2010

Ohjelmointi Perusteet Peruskäsitteitä Olio-ohjelmointi Pythonin alkeet Esittely Esimerkkejä Muuttujat Peruskäsitteitä Käsittely Numeeriset tyypit Laskutoimituksia Sarjatyypit Tauko

Perusteet Ohjelmointi - perusteet Mitä tarvitaan Tekstieditori Kääntäjä tai tulkki Lisähyötyä IDE (Integrated development enviroment) Kielen referenssiopas (sähköinen tai painettu)

Peruskäsitteitä Ohjelmointi - peruskäsitteitä Kääntäjä tai tulkki Kääntää ohjelmakoodin koneen ymmärtämään muotoon. Lähdekoodi Kertoo koneelle mitä ohjelman halutaan tekevän. Koostuu: muuttujista ohjausrakenteista aliohjelmista

Peruskäsitteitä Ohjelmointi - peruskäsitteitä Muuttuja Symboloi muuttuvaa suuretta, kuten lukua tai tekstinpätkää. Funktio, aliohjelma Tekee jonkin tietyn asian. Funktio ottaa vastaan muuttujan (tai useita), tekee jotain annetuilla muuttujilla, ja palauttaa tuloksen uutena muuttujana. Aliohjelma ottaa vastaan muuttujia, tekee jotain, ja muuttaa annettuja muuttujia. Ohjausrakenne Ohjaa ohjelman toimintaa. Voi mm. käskeä toistamaan tiettyä ohjelman kohtaa useita kertoja, tai valita useista mahdollisista suorituspoluista yhden.

Olio-ohjelmointi Ohjelmointi - olio-ohjelmointi Luokka Luokka on samankaltaisten olioiden prototyyppi eli rakennekuvaus. Luokasta muodostetaan tavallisesti ohjelmassa yksi tai useampi olio. Luokissa ja olioissa on tavallisesti myös tietoja, joita nimitetään ominaisuuksiksi (properties). Ominaisuudet sijoitetaan luokan tai olion muuttujiin (eli ominaisuus on pääteltävissä tai laskettavissa yhden tai useamman muuttujan avulla). Muuttujiin tallentuu siten olion tila, kuten asia oliotermein ilmaistaan. Muuttujat tavallisesti piilotetaan muilta luokilta ja olioilta kapseloimalle ne luokan tai olion sisään. Metodi Olio-ohjelmoinnissa metodi on aliohjelma joka on sidoksissa luokkaan tai olioon. Metodi voidaan ajatella proseduraalisen ohjelmointikielen aliohjelmana. Olioiden ja luokkien yhteistyö koostuu metodikutsuista, joita ne lähettävät toisilleen ja siten palvelevat toinen toisiaan. Kapselointi Kapselointi tarkoittaa ohjelmoinnissa yhteen kuuluvien tietojen ja toimintojen kokoamista yhdeksi kokonaisuudeksi. Olio-ohjelmoinnissa kapselointi tapahtuu usein kokoamalla muuttujat ja metodit luokaksi.

2- Python

Esittely Python Python on Vapaaseen lähdekoodiin perustuva ilmainen tulkattu kieli Saatavilla Linuxille, Macille ja Windosille Tehokas oikein käytettynä Jatkuvasti kehittyvä Käyttö Linuxista Komentotulkista: python tiedosto Pythonin tulkista: execfile(tiedosto) Komentotulkista ohjelmana jos koodilla on suoritusoikeudet ja ensimmäisellä rivillä #!polku/python/tulkiin

Esittely Python Mistä apua? How to Think Like a Computer Scientist - Learning with Python Python tutoriaali Oletuspaketit Kielireferenssi Lisäksi, verkossa paljon ilmaisia (eritasoisia) kirjoja, kirjakaupassa (ja kirjastoissa) paljon tasokkaita kirjoja (joista valtaosa menee muutaman ensimmäisen luvun jälkeen ohi kurssin tarpeet)

Esittely Editorin valinta

Esittely Editorin valinta Python-ystävällisiä editoreja Emacs etc... IDEjä Eric Eclipse KDevelop

Esimerkkejä Ensimmäinen toimiva Python ohjelma Esimerkki 1. "Hello World!" print "Hello world!"

Esimerkkejä Toinen toimiva Python ohjelma Esimerkki 2. #!/usr/bin/python from math import cos a = 1.0 b = 2.0 c = a + cos(c) print c

Peruskäsitteitä Muuttujien alkeet - termejä Muuttuja Muuttuja on jokin olio koneen muistissa, esimerkiksi lukuarvo tai tekstijono. Muuttujan tyyppi Muuttujan tyyppi määrittää minkälaista tietoa muuttuja pitää sisällään. Toisin kuin monessa muussa kielessä, muuttujan tyyppiä ei Pythonissa tarvitse erikseen määritellä ennen muuttujan käyttöönottoa, vaan tyyppi määräytyy automaattisesti luontivaiheessa. Tunnus Tunnus toimii osoittimena muuttujaan, muuttujan nimenä. Yhteen muuttujaan voi osoittaa monta tunnusta, ja tunnuksen voi vaihtaa osoittamaan johonkin toiseen muuttujaan kesken ohjelman. Lisäksi, toisin kuin monessa muussa kielessä, tunnus ei ole sidottu mihinkään tiettyyn muuttujatyyppiin.

Peruskäsitteitä Muuttujien alkeet - tunnus osoittimena Tunnus toimii osoittimena muuttujaan a = [1, 2, 3, 4] b = a print a, b a[2] = 8 print a, b

Käsittely Muuttujien alkeet - käsittely Muuttujan luominen Yksinkertaisin tapa luoda uusi muuttuja on sijoittaa tunnukseen halutun tyyppinen olio. x = 1 luo kokonaislukumuuttujan arvolla 1 ja tunnuksella x. x = int() luo tyhjän kokonaislukumuuttujan. Muuttujan tuhoaminen Muuttuja tuhotaan automaattisesti jos siihen ei osoita yhtään tunnusta. Muuttuja voidaan myös halutessa tuhota funtkiolla del(muuttuja) Muuttujan tyypin selvittäminen Muuttuja tyyppi saadaan selville funktiolla type(muuttuja)

Numeeriset tyypit Numeeriset tyypit Numeerisista tyypeistä Numeeriset tyypit pitävät sisällään lukuarvoja. Olennaisena tekijänä tyypin valinnassa on, halutaanko käsitellä kokonais- vai reaalilukuja. Kokonaisluvuissa pitää lisäksi valita kuinka suuria arvoja halutaan käsitellä. Numeeriset tyypit int long float complex - kokonaisluku - pitkä kokonaisluku - reaaliluku - kompleksiluku

Laskutoimituksia Laskutoimitukset numeerisille tyypeille Peruslaskutoimitukset + summa - erotus * kertolasku ** potenssiin korotus / jakolasku // pyöristetty jakolasku % jakojäännös Vertailuoperaattorit == yhtä suuri kuin < pienempi kuin > suurempi kuin Matemaattiset funktiot Hyödyllisiä funktioita saadaan käyttöön math-moduulista käskyllä from math import * cos() sin() tan() pow() sqrt() exp() log() radians() degrees() kosini sini tangentti potenssi neliöjuuri eksponentti logaritmi aste -> rad rad -> aste

Sarjatyypit Sarjatyypit Sarjatyypeistä Sarjatyypeissä (sequence types) muuttuja osoittaa jonkinlaiseen listaan muita muuttujia. Sarjatyypit voidaan jakaa muutettaviin ja ei-muutettaviin luokkiin sen mukaan, voidaanko tyypin yksittäisiä elementtejä muuttaa. Merkkijonot sisältävät merkkejä, listat voivat sisältää mitä tahansa pythonin olioita, kuten toisia listoja. Sarjatyypit str list tuple - merkkijono - lista - vakiolista

Sarjatyypit Sarjatyypit - käsitteleminen Merkkijonon luominen a = "simsalabim" luo merkkijonon "simsalabim". Listan luominen a = [1,2,3.0] luo listan jossa on kaksi kokonaislukumuuttujaa ja yksi liukulukumuuttuja. Listan alkioiden käsitteleminen Listan alkioihin viitataan hakasuluilla. Listan numerointi alkaa nollasta. a[0] = 1.0 asettaa listan ensimmäiseksi alkioksi liukuluvun 1.0. a[1:] = 2.0 asettaa listan alkiot lähtien toisesta listan loppuun.

kahvitauko ja lisää Pythonia...