SlideShare a Scribd company logo
1 of 38
Download to read offline
Programmēšanas valoda

Izmantošanas skolā atbilstība vidējās izglītības standartam

Kalvis Kincis
Rīgas 6. vidusskola
LatSTE, 2013. gada 1. novembrī Linux centrā
Programmēšana ir jaunais melnais
Ievērojamās vakances IKT jomā
start(it)
code.org un codeacademy
Igaunija
Programmēšanas nedēļa vai koda stunda
Eiropas Savienībā un ASV
8 LatSTE 2013 tēmas ir +/- par programmēšanu
Kāpēc Python?

Brīva atvērtā pirmkoda programmatūra
Programmatūra ar regulāru attīstību
Kāpēc Python?
Valoda viegla gan apgūšanai, gan koda lasīšanai
class myfirstjavaprog
{
public static void
main(String args[])
{
System.out.println("Hello World!");
}
}
program HelloWorld;
begin
writeln('Hello World');
end.

#include <iostream>
using namespace std;
int main ()
{
cout << "Hello World!";
return 0;
}

print("Hello, World!")
Kāpēc Python?
Laba dokumentācija un iebūvētā palīdzība. Plaši
pieejami, moderni brīvi un maksas mācību
resursi.
docs.python.org
Kāpēc Python?
Python ir dažādu programmēšanas valodu reitingu pirmajā
trijniekā – desmitniekā.
Ar Python izstrādāti vai Python nodrošina darbību vairākiem
aktuāliem tīmekļa resursiem – Instagram, Pinterest, Rdio, Reddit,
Youtube, Gmail, Google Maps.
Un lietotnes vai to papildinājumi Dropbox, Blender 3D animāciju modelēšana, BitTorrent. Corel
Paint Shop Pro, Gimp, Inkscape paplašinājumi.
Kāpēc Python?
Python programmēšana ir jautra.
Rada prieku.
Spridzīga.
Python vizītkarti noslēdzot
Guido van Rossum – Nīderlande, 1991
Interpretatora valoda
Ar savu koda redaktoru IDLE un tkinter moduli
grafiskās vides programmu veidošanai
Python 2 un Python 3 (šodien par Python 3)
Datņu tips .py .pyw .pyc .pyo
Īsais kurss Python
Python prasības sistēmai
"Parasts" dators ar mūsdienīgu operētājsistēmu Linux, Windows, OS X.
Var uzstādīt Android telefonā vai planšetdatorā.
(Nepieciešams Python for Android, skriptu
palaidējs,koda redaktors).
Python koda redaktors pieejams arī iOS ierīcēm.
Meklēt iekš iTunes. Tiesa, par maksu.
Python uzstādīšana Linux
Ubuntu, Mint, Debian
sudo apt-get install python3 idle3

Fedora
su yum install python3 python3-tools

Arch
pacman -S python tk

Uzstādīto meklēt pie visām lietotnēm grupā Izstrāde
Python uzstādīšana Windows/OS X
python.org/download
Meklēt savu OS versiju, lejuplādēt un uzstādīt kā ierasts

Meklēt pie lietotnēm Python 3 - IDLE
Interpretatora vide Python Shell
Vide atsevišķām komandām
Interpretatora vide Python Shell
Vide palīdzības lasīšanai.
Interpretatora vide Python Shell
Vide funkciju
izsaukšanai
pēdējai aktīvajai
programmai.
Python izstrādes vide IDLE
Izceļ kodu
Liek pareizas un labo nepareizas atkāpes
Rindiņas pabeigšana (TAB, CTRL + space)
Atkļūdotājs (debugger)
Koda izpildīšana (F5)
Citas izstrādes vides
IDLE nav ērts, ja jāstrādā ar daudz datnēm vai ja
datorklasē jārāda ar projektoru. Ir alternatīvas:
Geany
Gedit
Sublime Text
PyDev spraudnis Eclipse
Vēl ~simts:
https://wiki.python.org/moin/PythonEditors
Laiks kodam!
ej.uz/py_kods
Python mainīgie un vienkāršas
darbības interpretatora vidē:
print(25 + 23)
...
print(25**23)
vards = “Python”
print(vards)
print(vards*5)
valodas = [“Python”,”C”,”Pascal”]
print(valodas[0])
Koda atvēršana, izpildīšana:
Python komentāri sākas ar #
# te var rakstīt visu, ko domā
Garāki komentāri sākas un beidzas ar '''
Koda atvēršana ar File – Open, izpilde ar F5

01_mainigie_darbibas.py
01a_mainigie_darbibas.py
01_uzdevums.py
Funkcijas
Ideālajā pasaulē Python kods ir organizēts ar
funkcijām.
Python atkāpe koda strukturēšanai ir 4
tukšumi.
def sveiki():
print(“Sveika, pasaule!”)
def taisnsturis(a, b):
return(a*b)
sveiki()
print(taisnsturis(4,5))

02_funkcijas.py

02_uzdevums.py
Sazarojumi
diena = 5
if diena == 5:
print(“Urrā, piektdiena, varēs ilgāk
palikt darbā”)
elif diena == 6 or diena == 7:
print(“Brīvdiena”)
else:
print(“Ej ka nu strādāt!”)

03_sazarojumi.py
Moduļi
Python kā valodu var iemācīties gandrīz vienā dienā.
Tam ir tikai 68 funkcijas.
Citu funkcionalitāti importē no moduļiem. Arī paši var
uzrakstīt moduli.
Mācoties par kādu moduli, datni nedrīkt nosaukt šī
moduļa vārdā!
import math
print(math.sin(pi/4))
print(math.sqrt(121))
print(math.factorial(12))

04_moduli.py
04a_moduli.py
04_uzdevums.py
Cikli
for i in range(1,6):
print(i)
valodas = [“python”,”php”,”ruby”]
for katrs in valodas:
print(katrs)
import random
a = 0
while a<= 10:
a += random.random()
print(a)

05_cikli.py
05a_cikli.py
05_uzdevums.py
Darbības ar datnēm
datne = open("teksts.txt","r")
saturs = datne.read()
datne.close()
print(saturs)
datne = open("teksts.txt","w")
datne.write(“Sveika, pasaule!”)
datne.close()

06_datnes.py
06_uzdevums.py
OOP. Objektu veidošana
class Punkts(object):
def __init__ (self, x, y):
self.x = x
self.y = y
def __str__(self):
return "x: %g; y: %g" % (self.x, self.y)
punkts1 = Punkts(3, 4)
punkts2 = Punkts(1, 2)
print(punkts1.x)
print(punkts1.y)
print(punkts1)

07_OOP.py
07a_OOP.py
07_uzdevums.py
Grafiskais modulis turtle
Atslodzes brīžiem, pirmajām stundām, figūru
zīmēšanai, fraktāļiem.
Arī viena no iespējām 7. klasē pie algoritmiem.

08_rupucis.py
08a_rupucis.py
08_uzdevums.py
Grafiskais modulis tkinter
tkinter modulis ir iebūvēts, bet, iespējams, ne pats stilīgākais.
Ir alternatīvas:
–

wxPython, PyQT, PyGTK

Galvenie elementi:
–

“parastās” formas – pogas, teksta ievade un citi,

–

zīmēšanas virsma canvas,

–

attēlu importēšana (gif),

–

Tas viss ar grid() salikts rindās un kolonnās.

Izskats +/- līdzīgs visās platformās

09_grafiska_vide.py 09a_grafiska_vide.py 09_uzdevums.py
Citas datnes pētīšanai
fraktalis.py
tkinter_oop.py
tkinter_pong.py
uzmini_skaitli trīs versijas ar/bez funkcijām
bin_uz_dec.py
Kodēšanas beigas
Vidējās izglītības standarts
Vispārējās vidējās izglītības mācību
priekšmeta Programmēšanas
pamati standarts ir realizējams,
izmantojot programmēšanas
valodu Python.
Riski, problēmas
Python 2 un Python 3:
–

Meklējot padomus internetā un nezinot mazās
atšķirības, var nekas nesanākt

–

Ir atsevišķi moduļi, kas nav pārnesti uz Python 3
(piemēram, PIL attēlu bibliotēka)

Literatūra latviešu valodā
Python nav informātikas olimpiādes valoda
Pēc stundām
Pygame
Modulis 2D spēļu izstrādei. Lieliski dokumentēta, ir
bezmaksas e-grāmatas ar kodu. Uzstādot jāpaseko
līdzi versijām.
Veicina un attīsta arī zīmēšanas, attēlu un skaņas
apstrādes prasmes.

pygame.org
Minecraft
Ar Python programmējams Minecraft serveris.
Tēma šķiet aktuāla, jo vairāki savstarpēji
nesaistīti autori izstrādā savas metodes. Arī
Latvijā.
Šis pagaidām ir tikai darbu sarakstā.
Attīstība nākotnei
Nokomplektēt konspektu, piemēru un
uzdevumu "iztikas minimumu" precīzai
standarta realizācijai un to nodot brīvai
lietošanai un pilnveidošanai.
Plašākas intereses gadījumā kursi
pedagogiem.
Iemācīties spēlēt Minecraft. :)
Tālākai lasīšanai
http://docs.python.org/3/
http://interactivepython.org
http://inventwithpython.com/
http://learnpythonthehardway.org/book/
http://www.greenteapress.com/thinkpython/html/in
dex.html
http://www.codecademy.com/tracks/python
Par python latviešu valodā. Python 2!
http://www.alvils.info/index.cgi?action=4
Paldies par uzmanību!
kalvis.kincis@r6vsk.lv

More Related Content

What's hot

pdf c programming language.pdf
pdf c programming language.pdfpdf c programming language.pdf
pdf c programming language.pdfVineethReddy560178
 
Voice Assistant Using Python and AI
Voice Assistant Using Python and AIVoice Assistant Using Python and AI
Voice Assistant Using Python and AIIRJET Journal
 
Монгол үгийн бүтэц, Бүтээвэрзүй, түүний судлах зүйл
Монгол үгийн бүтэц, Бүтээвэрзүй, түүний судлах зүйлМонгол үгийн бүтэц, Бүтээвэрзүй, түүний судлах зүйл
Монгол үгийн бүтэц, Бүтээвэрзүй, түүний судлах зүйлGe Go
 
Odoo - Recruiting and managing highly skilled talents
Odoo - Recruiting and managing highly skilled talentsOdoo - Recruiting and managing highly skilled talents
Odoo - Recruiting and managing highly skilled talentsOdoo
 
Algoritmu uzdevumi 2011
Algoritmu uzdevumi 2011Algoritmu uzdevumi 2011
Algoritmu uzdevumi 2011kalvis
 
Valodas funkcionālie stili
Valodas funkcionālie stiliValodas funkcionālie stili
Valodas funkcionālie stiliUzdevumi.lv
 
программ хангамжийн їндсэн ойлголт
программ хангамжийн їндсэн ойлголтпрограмм хангамжийн їндсэн ойлголт
программ хангамжийн їндсэн ойлголтshulam
 
Introduction to text to speech
Introduction to text to speechIntroduction to text to speech
Introduction to text to speechBilgin Aksoy
 
уранхүрэл 18
уранхүрэл 18уранхүрэл 18
уранхүрэл 18Uranhurel
 

What's hot (20)

pdf c programming language.pdf
pdf c programming language.pdfpdf c programming language.pdf
pdf c programming language.pdf
 
C++
C++C++
C++
 
10 32 oglhidrati
10 32 oglhidrati10 32 oglhidrati
10 32 oglhidrati
 
10 28 sjuunu_uzbuve
10 28 sjuunu_uzbuve10 28 sjuunu_uzbuve
10 28 sjuunu_uzbuve
 
Voice Assistant Using Python and AI
Voice Assistant Using Python and AIVoice Assistant Using Python and AI
Voice Assistant Using Python and AI
 
11 32 regulacija
11 32 regulacija11 32 regulacija
11 32 regulacija
 
C++ vndsen oilgolt хичээл 1
C++ vndsen oilgolt хичээл 1C++ vndsen oilgolt хичээл 1
C++ vndsen oilgolt хичээл 1
 
10 20 organisms un vide
10 20 organisms un vide10 20 organisms un vide
10 20 organisms un vide
 
Editor structure
Editor structureEditor structure
Editor structure
 
Монгол үгийн бүтэц, Бүтээвэрзүй, түүний судлах зүйл
Монгол үгийн бүтэц, Бүтээвэрзүй, түүний судлах зүйлМонгол үгийн бүтэц, Бүтээвэрзүй, түүний судлах зүйл
Монгол үгийн бүтэц, Бүтээвэрзүй, түүний судлах зүйл
 
Odoo - Recruiting and managing highly skilled talents
Odoo - Recruiting and managing highly skilled talentsOdoo - Recruiting and managing highly skilled talents
Odoo - Recruiting and managing highly skilled talents
 
Algoritmu uzdevumi 2011
Algoritmu uzdevumi 2011Algoritmu uzdevumi 2011
Algoritmu uzdevumi 2011
 
Java lecture3
Java lecture3Java lecture3
Java lecture3
 
Valodas funkcionālie stili
Valodas funkcionālie stiliValodas funkcionālie stili
Valodas funkcionālie stili
 
Lipīdi
LipīdiLipīdi
Lipīdi
 
C
CC
C
 
программ хангамжийн їндсэн ойлголт
программ хангамжийн їндсэн ойлголтпрограмм хангамжийн їндсэн ойлголт
программ хангамжийн їндсэн ойлголт
 
11 24 vielu transports
11 24 vielu transports11 24 vielu transports
11 24 vielu transports
 
Introduction to text to speech
Introduction to text to speechIntroduction to text to speech
Introduction to text to speech
 
уранхүрэл 18
уранхүрэл 18уранхүрэл 18
уранхүрэл 18
 

More from kalvis

Serveru un darbstaciju APP risinājumi skolā
Serveru un darbstaciju APP risinājumi skolāServeru un darbstaciju APP risinājumi skolā
Serveru un darbstaciju APP risinājumi skolākalvis
 
Prezentacija
PrezentacijaPrezentacija
Prezentacijakalvis
 
Algoritmi 2011
Algoritmi 2011Algoritmi 2011
Algoritmi 2011kalvis
 
5kl Ppt
5kl Ppt5kl Ppt
5kl Pptkalvis
 
R6vsk ZPD tēmas 2009
R6vsk ZPD tēmas 2009R6vsk ZPD tēmas 2009
R6vsk ZPD tēmas 2009kalvis
 
Rīgas 6. vidusskoloas ZPD noformējuma prasības
Rīgas 6. vidusskoloas ZPD noformējuma prasībasRīgas 6. vidusskoloas ZPD noformējuma prasības
Rīgas 6. vidusskoloas ZPD noformējuma prasībaskalvis
 
Olimp2008
Olimp2008Olimp2008
Olimp2008kalvis
 
Olimp2009
Olimp2009Olimp2009
Olimp2009kalvis
 

More from kalvis (8)

Serveru un darbstaciju APP risinājumi skolā
Serveru un darbstaciju APP risinājumi skolāServeru un darbstaciju APP risinājumi skolā
Serveru un darbstaciju APP risinājumi skolā
 
Prezentacija
PrezentacijaPrezentacija
Prezentacija
 
Algoritmi 2011
Algoritmi 2011Algoritmi 2011
Algoritmi 2011
 
5kl Ppt
5kl Ppt5kl Ppt
5kl Ppt
 
R6vsk ZPD tēmas 2009
R6vsk ZPD tēmas 2009R6vsk ZPD tēmas 2009
R6vsk ZPD tēmas 2009
 
Rīgas 6. vidusskoloas ZPD noformējuma prasības
Rīgas 6. vidusskoloas ZPD noformējuma prasībasRīgas 6. vidusskoloas ZPD noformējuma prasības
Rīgas 6. vidusskoloas ZPD noformējuma prasības
 
Olimp2008
Olimp2008Olimp2008
Olimp2008
 
Olimp2009
Olimp2009Olimp2009
Olimp2009
 

Python izmantošana skolā.

  • 1. Programmēšanas valoda Izmantošanas skolā atbilstība vidējās izglītības standartam Kalvis Kincis Rīgas 6. vidusskola LatSTE, 2013. gada 1. novembrī Linux centrā
  • 2. Programmēšana ir jaunais melnais Ievērojamās vakances IKT jomā start(it) code.org un codeacademy Igaunija Programmēšanas nedēļa vai koda stunda Eiropas Savienībā un ASV 8 LatSTE 2013 tēmas ir +/- par programmēšanu
  • 3. Kāpēc Python? Brīva atvērtā pirmkoda programmatūra Programmatūra ar regulāru attīstību
  • 4. Kāpēc Python? Valoda viegla gan apgūšanai, gan koda lasīšanai class myfirstjavaprog { public static void main(String args[]) { System.out.println("Hello World!"); } } program HelloWorld; begin writeln('Hello World'); end. #include <iostream> using namespace std; int main () { cout << "Hello World!"; return 0; } print("Hello, World!")
  • 5. Kāpēc Python? Laba dokumentācija un iebūvētā palīdzība. Plaši pieejami, moderni brīvi un maksas mācību resursi. docs.python.org
  • 6. Kāpēc Python? Python ir dažādu programmēšanas valodu reitingu pirmajā trijniekā – desmitniekā. Ar Python izstrādāti vai Python nodrošina darbību vairākiem aktuāliem tīmekļa resursiem – Instagram, Pinterest, Rdio, Reddit, Youtube, Gmail, Google Maps. Un lietotnes vai to papildinājumi Dropbox, Blender 3D animāciju modelēšana, BitTorrent. Corel Paint Shop Pro, Gimp, Inkscape paplašinājumi.
  • 7. Kāpēc Python? Python programmēšana ir jautra. Rada prieku. Spridzīga.
  • 8. Python vizītkarti noslēdzot Guido van Rossum – Nīderlande, 1991 Interpretatora valoda Ar savu koda redaktoru IDLE un tkinter moduli grafiskās vides programmu veidošanai Python 2 un Python 3 (šodien par Python 3) Datņu tips .py .pyw .pyc .pyo
  • 10. Python prasības sistēmai "Parasts" dators ar mūsdienīgu operētājsistēmu Linux, Windows, OS X. Var uzstādīt Android telefonā vai planšetdatorā. (Nepieciešams Python for Android, skriptu palaidējs,koda redaktors). Python koda redaktors pieejams arī iOS ierīcēm. Meklēt iekš iTunes. Tiesa, par maksu.
  • 11. Python uzstādīšana Linux Ubuntu, Mint, Debian sudo apt-get install python3 idle3 Fedora su yum install python3 python3-tools Arch pacman -S python tk Uzstādīto meklēt pie visām lietotnēm grupā Izstrāde
  • 12. Python uzstādīšana Windows/OS X python.org/download Meklēt savu OS versiju, lejuplādēt un uzstādīt kā ierasts Meklēt pie lietotnēm Python 3 - IDLE
  • 13. Interpretatora vide Python Shell Vide atsevišķām komandām
  • 14. Interpretatora vide Python Shell Vide palīdzības lasīšanai.
  • 15. Interpretatora vide Python Shell Vide funkciju izsaukšanai pēdējai aktīvajai programmai.
  • 16. Python izstrādes vide IDLE Izceļ kodu Liek pareizas un labo nepareizas atkāpes Rindiņas pabeigšana (TAB, CTRL + space) Atkļūdotājs (debugger) Koda izpildīšana (F5)
  • 17. Citas izstrādes vides IDLE nav ērts, ja jāstrādā ar daudz datnēm vai ja datorklasē jārāda ar projektoru. Ir alternatīvas: Geany Gedit Sublime Text PyDev spraudnis Eclipse Vēl ~simts: https://wiki.python.org/moin/PythonEditors
  • 19. Python mainīgie un vienkāršas darbības interpretatora vidē: print(25 + 23) ... print(25**23) vards = “Python” print(vards) print(vards*5) valodas = [“Python”,”C”,”Pascal”] print(valodas[0])
  • 20. Koda atvēršana, izpildīšana: Python komentāri sākas ar # # te var rakstīt visu, ko domā Garāki komentāri sākas un beidzas ar ''' Koda atvēršana ar File – Open, izpilde ar F5 01_mainigie_darbibas.py 01a_mainigie_darbibas.py 01_uzdevums.py
  • 21. Funkcijas Ideālajā pasaulē Python kods ir organizēts ar funkcijām. Python atkāpe koda strukturēšanai ir 4 tukšumi. def sveiki(): print(“Sveika, pasaule!”) def taisnsturis(a, b): return(a*b) sveiki() print(taisnsturis(4,5)) 02_funkcijas.py 02_uzdevums.py
  • 22. Sazarojumi diena = 5 if diena == 5: print(“Urrā, piektdiena, varēs ilgāk palikt darbā”) elif diena == 6 or diena == 7: print(“Brīvdiena”) else: print(“Ej ka nu strādāt!”) 03_sazarojumi.py
  • 23. Moduļi Python kā valodu var iemācīties gandrīz vienā dienā. Tam ir tikai 68 funkcijas. Citu funkcionalitāti importē no moduļiem. Arī paši var uzrakstīt moduli. Mācoties par kādu moduli, datni nedrīkt nosaukt šī moduļa vārdā! import math print(math.sin(pi/4)) print(math.sqrt(121)) print(math.factorial(12)) 04_moduli.py 04a_moduli.py 04_uzdevums.py
  • 24. Cikli for i in range(1,6): print(i) valodas = [“python”,”php”,”ruby”] for katrs in valodas: print(katrs) import random a = 0 while a<= 10: a += random.random() print(a) 05_cikli.py 05a_cikli.py 05_uzdevums.py
  • 25. Darbības ar datnēm datne = open("teksts.txt","r") saturs = datne.read() datne.close() print(saturs) datne = open("teksts.txt","w") datne.write(“Sveika, pasaule!”) datne.close() 06_datnes.py 06_uzdevums.py
  • 26. OOP. Objektu veidošana class Punkts(object): def __init__ (self, x, y): self.x = x self.y = y def __str__(self): return "x: %g; y: %g" % (self.x, self.y) punkts1 = Punkts(3, 4) punkts2 = Punkts(1, 2) print(punkts1.x) print(punkts1.y) print(punkts1) 07_OOP.py 07a_OOP.py 07_uzdevums.py
  • 27. Grafiskais modulis turtle Atslodzes brīžiem, pirmajām stundām, figūru zīmēšanai, fraktāļiem. Arī viena no iespējām 7. klasē pie algoritmiem. 08_rupucis.py 08a_rupucis.py 08_uzdevums.py
  • 28. Grafiskais modulis tkinter tkinter modulis ir iebūvēts, bet, iespējams, ne pats stilīgākais. Ir alternatīvas: – wxPython, PyQT, PyGTK Galvenie elementi: – “parastās” formas – pogas, teksta ievade un citi, – zīmēšanas virsma canvas, – attēlu importēšana (gif), – Tas viss ar grid() salikts rindās un kolonnās. Izskats +/- līdzīgs visās platformās 09_grafiska_vide.py 09a_grafiska_vide.py 09_uzdevums.py
  • 31. Vidējās izglītības standarts Vispārējās vidējās izglītības mācību priekšmeta Programmēšanas pamati standarts ir realizējams, izmantojot programmēšanas valodu Python.
  • 32. Riski, problēmas Python 2 un Python 3: – Meklējot padomus internetā un nezinot mazās atšķirības, var nekas nesanākt – Ir atsevišķi moduļi, kas nav pārnesti uz Python 3 (piemēram, PIL attēlu bibliotēka) Literatūra latviešu valodā Python nav informātikas olimpiādes valoda
  • 34. Pygame Modulis 2D spēļu izstrādei. Lieliski dokumentēta, ir bezmaksas e-grāmatas ar kodu. Uzstādot jāpaseko līdzi versijām. Veicina un attīsta arī zīmēšanas, attēlu un skaņas apstrādes prasmes. pygame.org
  • 35. Minecraft Ar Python programmējams Minecraft serveris. Tēma šķiet aktuāla, jo vairāki savstarpēji nesaistīti autori izstrādā savas metodes. Arī Latvijā. Šis pagaidām ir tikai darbu sarakstā.
  • 36. Attīstība nākotnei Nokomplektēt konspektu, piemēru un uzdevumu "iztikas minimumu" precīzai standarta realizācijai un to nodot brīvai lietošanai un pilnveidošanai. Plašākas intereses gadījumā kursi pedagogiem. Iemācīties spēlēt Minecraft. :)