PYTHON!?
In conluzie , blocurile de instructiuni sunt prezentat sus prin culori diferite: bloc
principal de instructiuni -subrutina principala cu culoarea galben, apoi urmatoarele
blocuri (gri si mov) blocuri secundare – subrutine.E poate putin mai dificil la inceput de
scris cod dar dupa cateva incercari o sa reusiti.
Pentru a rula un program in python avem doua posibilitati. Prima in consola
scriem „python” , o sa apara prompterul specific python „>>>” apoi introducem
instructiuni , respectand regula cu alinierea de mai sus. A doua posibilitate este printr-
un fisier text in care scriem instructiunile si salvam totul cu extensia „.py”, apoi
executam scriptul scriind in consola „python nume_script.py”.
Sa exemplificam cu un mic script scris in linie comanda :
user@user:~$ python
Python 2.4.4 (#2, Apr 5 2007, 20:11:18)
[GCC 4.1.2 20061115 (prerelease) (Debian 4.1.1-21)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> raza = input("introdu raza")
introdu raza10
>>> print "aria este ", raza * raza * 3.1415
aria este 314.15
>>>
Iata ca un mic exemplu de calcul , se poate scrie cu cateva linii de
cod.Bineinteles ca se putea aduga si alte functii.
Sa retinem acum ca instructiunile „input” si „print” sunt instructiuni de
„feedback”. Putem definii si functii pentru acestfel de calcule :
user@user:~$ python
Python 2.4.4 (#2, Apr 5 2007, 20:11:18)
[GCC 4.1.2 20061115 (prerelease) (Debian 4.1.1-21)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> def semn(nr):
... rez = "?"
... if nr<0 : rez = "negativ"
... else: rez = "pozitiv"
... return rez
...
>>> print semn(-1)
negativ
>>> print semn (1)
pozitiv
>>>
Sa ne gandim la python ca la un limbaj care se preteaza la toate varstele. Copii
se pot juca cu RurPle si EasyGUI sau cu „turtle”:
user@user:~$ python
Python 2.4.4 (#2, Apr 5 2007, 20:11:18)
[GCC 4.1.2 20061115 (prerelease) (Debian 4.1.1-21)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> from turtle import *
>>> import time
>>> color ("green")
>>> up()
>>> goto(0,-10)
>>> down()
>>> circle(50)
>>> circle(150)
>>> goto(0,0)
>>> goto(10,0)
>>> goto(10,30)
>>>
user@user:~$ python
>>> 2j * 3J
(-6+0j)
>>> 1 * complex(2,2)
(2+2j)
>>> 1 - complex(2,3)
(-1-3j)
>>> J - (2 + 3j)
Traceback (most recent call last):
File "<stdin>", line 1, in ?
NameError: name 'J' is not defined
>>> j - (2 + 3j)
Traceback (most recent call last):
File "<stdin>", line 1, in ?
NameError: name 'j' is not defined
>>> 1j - (2 + 3j)
(-2-2j)
>>>
user@user:~$ python
>>> 12345.999999 * 999999999999.11233333
12345999998989040.0
>>> 12345.999999 * 999999999999123455666.11233333
1.2345999998989178e+25
user@user:~$ python
Python 2.4.4 (#2, Apr 5 2007, 20:11:18)
[GCC 4.1.2 20061115 (prerelease) (Debian 4.1.1-21)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys,pygame
>>> pygame.init()
(6, 0)
>>> screen1 = pygame.display.set_mode((640,480))
>>>
Gata avem pregatita fereasta pentru joc e adevarat mai avem nevoie de o
subrutina de tratarea a tastaturii si alte subrutine necesare .Oricum fereastra
principala a fost creata incateva linii de cod , fara initializari grafice de tot felul ...
Am spus destul de multe dar tostusi prea putine pentru ca python are si alti asi
in maneca.
Spre exemplu el mai stie de html , de xml , de sql , de expresii regulate , de C
(vezi:SWIG) , de C++ ( vezi:Boost), de opengl (vezi:PyOpenGL), de awk(vezi: Pyawk),
de SciPy(vezi:http://www.scipy.org/SciPy) , PyLab si toate acestea doar la o scurta
introspectie ...
Un alt aspect pozitiv , daca nu chhiar cel mai bun lucru pe care il aduce python ,
din punctul meu de vedere, este faptul ca poate fi pus pe un simplu stick sau minicd,
impreuna cu module necesare si scripturi proprii .
Astfel avem la purtator o unealta foarte utila atunci cand mergem undeva si
trebuie sa rezolvam diferite probleme specifice fara sa mai trecem prin cautari de soft
specializat sau sa ne chinuim cu google sa gasim raspunsuri ...
Un mini manual in limba romana , il puteti lua de la
python.net/~gherman/propaganda/tut-ro/tut-ro.pdf
, unde in cateva capitole sunt explicate posibilitatile acestui minunat limbaj
suficiente pentru ca un incepator sa inteleaga acest limbaj.
Sa nu uitam ca aici am prezentat doar o infima parte din ceea ce poate el cu
adevarat. Pentru ca mai exista python poate lucra cu Openoffice, poate fi folosit la
web, pote lucra cu multimedia, etc.
Nu m-ar mira ca acest limbaj sa dainuie de acum incolo multi ani si poate de ce
nu sa il vedem chiar si prin sistemul educational.
Scripting placut !
catalinfest@gmail.com