Language
Lt :: En

Pirmoji paskaita (2004-09-06)

Per pačią paskaitą nieko įdomaus nepasakiau, tačiau kitą dieną per pratybas išdėsčiau sintaksės pagrindus. Žmonėms, kurie jau žino Paskalį, C, C++ arba Javą pačiai pradžiai to turėtų pakakti.

Trumpa sintaksės apžvalga

Susipažinti su Pythono sintakse geriau skaitant vieną iš pagrindiniame puslapyje nurodytų šaltinių (tutorialą arba Dive into Python), bet ši trumpa apžvalga gal padės prisiminti ar pasikartoti.

Priskyrimo sakinys -- jokių siurprizų:

x = 1 + 2 * 3 - 5 ** 2   # '**' yra kelimo laipsniu operatorius
# '#' pradeda komentarą, kuris tęsiasi iki eilutės pabaigos

Simbolių eilutės:

a = 'simbolių eilutė'
b = "kita simbolių eilutė"
c = 'kabutės ir apostrofas eilutėje: " \''

Skaičiai:

x = 123
y = 0xFFFF
z = -0.15

Išvedimas į ekraną:

print "x =", x

Sąlyginiai sakiniai:

if x == 42:
    print "Life, the Universe and Everything"
if y == 8:
    print "y == 8"
else:
    print "y != 8"
if y < 0:
    print "y < 0"
elif y > 0:
    print "y > 0"
else:
    print "y == 0"

Ciklai:

x = 0
while x < 10:
    print x
    x += 1
for x in [1, 2, 3, 5, 10]:
    print x
for x in range(5):  # 0, 1, 2, 3, 4
    print x

Sąrašai:

l = [1, 2, 3]
l.append(4)     # l == [1, 2, 3, 4]
l2 = ['labas', 'rytas']
print l2[0]     # 'labas'
if range(1, 5) == [1, 2, 3, 4]:
    print "range funkcija veikia"

Žodynai:

failu_skaicius_pagal_ispletima = {'.c': 7, '.h': 12}
print failu_skaicius_pagal_ispletima['.c']
failu_skaicius_pagal_ispletima['.c'] += 2
if '.c' in failu_skaicius_pagal_ispletima:
    print 'C failu yra'
if '.pas' not in failu_skaicius_pagal_ispletima:
    print 'o Paskalio nera'

Tuplai

x = (1, 2, 3)
(a, b, c) = x
(a, b, c) = (1, 2, 3)

indeksas = {}
indeksas[(vardas, pavarde)] = duomenys

x, y = y, x            # sukeitimas vietomis

Funkcijos

def faktorialas(n):
    x = 1
    for i in range(1, n+1):
        x *= i
    return x

print "5! =", faktorialas(5)

Klasės

class Taskas:

    def __init__(self, x, y):
        self.x = x
        self.y = y

    def atspindys(self):
        return Taskas(-self.x, -self.y)

taskas1 = Taskas(5, 2)
taskas2 = taskas1.atspindys()

Darbas su failais

f = open('mano.txt')
first_line = f.readline()
for line in f:
    print line.rstrip().upper()
f.close()
f = open('tavo.txt', 'w')
f.write("eilute\n")
for x in range(5):
    print >> f, x
f.close()

Moduliai

import datetime
dt = datetime.date(2004, 9, 7)
print dt.year  # 2004
from datetime import date
dt = date(2004, 9, 7)
print dt.year  # 2004
import manomodulis
# ieškos failo manomodulis.py dabartiniame kataloge
# arba kataloguose, išvardintuose PYTHONPATH aplinkos kintamajame
import manopaketas.manomodulis
# ieškos katalogo manopaketas su failu manomodulis.py dabartiniame kataloge
# arba kataloguose, išvardintuose PYTHONPATH aplinkos kintamajame
# kataloge manopaketas turi būti failas __init__.py (jis gali būti tuščias)


Valid XHTML 1.1! Valid CSS! Paskutiniai pakeitimai: 2012-01-08