Wiki Ubuntu-it

Indice
Partecipa
FAQ
Wiki Blog
------------------
Ubuntu-it.org
Forum
Chiedi
Chat
Cerca
Planet
  • Pagina non alterabile
  • Informazioni
  • Allegati
  • Differenze per "Programmazione/Python"
Differenze tra le versioni 20 e 33 (in 13 versioni)
Versione 20 del 24/09/2006 10.56.37
Dimensione: 10658
Commento:
Versione 33 del 10/10/2006 10.34.17
Dimensione: 8578
Commento:
Le cancellazioni sono segnalate in questo modo. Le aggiunte sono segnalate in questo modo.
Linea 1: Linea 1:
Python è un linguaggio di programmazione molto versatile e di alto livello. Utilizzato sia per lo scripting che per la realizzazione di programmi completi. E' interpretato, orientato agli oggetti ed estensibile tramite il linguaggio C. ## page was renamed from Linguaggio Python
#language it
[[BR]]
||<tablestyle="float:right; font-size: 0.9em; width:40%; background:#F1F1ED; margin: 0 0 1em 1em;" style="padding:0.5em;">'''Indice'''[[BR]][[TableOfContents]]||
Linea 3: Linea 6:
== Introduzione == = Introduzione =
Linea 5: Linea 9:
E' interpretato e quindi caratterizzato da una grande portabilità su differenti piattaforme (Linux,Windows,Mac.....).[[BR]]
Python è estensibile tramite il linguaggio C. Può inoltre appoggiarsi a molte famose librerie scritte in C o C++: gui (wxpython, pygtk...), tool per lo svilippo di giochi (pygame,pysdl...), databases (mysqldb...) ...[[BR]]
E' un linguaggio di alto livello ed ha una sintassi molto piacevole e intuitiva (ideale per chi si avvicina alla programmazione!). I programmi scritti in python risultano spesso molto sintetici ed eleganti nella forma (ma ricordiamo che tutto dipende anche dallo stile personale del programmatore! ;-)).[[BR]]
E' nativamente un linguaggio orientato agli oggetti ma a differenza di altri linguaggi come il java permette anche uno stile procedurale e/o funzionale.[[BR]]
Ideale per realizzare applicazioni velocemnete, è utilizzato per una vasta gamma di scopi: scripting, creazione di programmi completi, estensioni di programmi scritti in C, realizzazione di prototipi di applicazioni che andranno poi riscritte in altri linguaggi
È interpretato e quindi caratterizzato da una grande portabilità su differenti piattaforme (Linux, Windows, Mac, ...).[[BR]]
Python è estensibile tramite il linguaggio C. Può inoltre appoggiarsi a molte famose librerie scritte in C o C++ per la creazione di GUI (wxpython, pygtk...), tool per lo svilippo di giochi (pygame, pysdl...), database (mysqldb, ...).[[BR]]
È un linguaggio ad alto livello, ha una sintassi molto piacevole e intuitiva (ideale per chi si avvicina alla programmazione). I programmi scritti in python risultano spesso molto sintetici ed eleganti nella forma (ma ricordiamo che tutto dipende anche dallo stile personale del programmatore! ;) ).[[BR]]
È nativamente un linguaggio orientato agli oggetti ma a differenza di altri linguaggi come il java permette anche uno stile procedurale e/o funzionale.[[BR]]
Ideale per realizzare applicazioni velocemnete, è utilizzato per una vasta gamma di scopi: scripting, creazione di programmi completi, estensioni di programmi scritti in C, realizzazione di prototipi di applicazioni che andranno poi riscritte in altri linguaggi.
Linea 11: Linea 15:
= Installazione =
Linea 12: Linea 17:
== Risorse ==

In lingua italiana:

'''Python.it'''[[BR]]
http://www.python.it/ [[BR]]
Il sito di riferimento per i programmatori python italiani! Qui potete trovare le traduzioni in italiano della documentazione ufficiale nonchè le FAQ sul linguaggio.

In lingua inglese:

'''Pyhton.org'''[[BR]]
http://www.python.org/ [[BR]]
Il sito ufficiale del linguaggio python. Trovate la documentazione in inglese aggiornata all'ultima versione dell'interprete, in più tutte le novità e le iniziative che ruotano intorno a questo linguaggio.


== Installazione ==

Con l'installazione standard di ubuntu l'interprete python dovrebbe già essere installato sulla vostra macchina, in caso contrario è sufficiente installare il pacchetto python da Synaptic o da riga di comando:

''sudo apt-get install python''
Con l'installazione predefinita di Ubuntu l'interprete python viene già installato. In caso contrario, è sufficiente installare il pacchetto ''python'' da utilizzando [:SynapticHowto:Synaptic] o da riga di comando: {{{
sudo apt-get install python
}}}
Linea 36: Linea 23:
Bene ora non vi reste che lanciare l'interprete interattivo e fare pratica. Aprite una shell e digitate python [INVIO][[BR]]
Dovrebbe apparirvi qualcosa tipo questo:
Bene ora non resta che lanciare l'interprete interattivo e fare pratica.
Linea 39: Linea 25:


{{{
Aprire un terminale e digitare: {{{
python
}}} Dovrebbe apparire qualcosa del tipo: {{{
Linea 48: Linea 34:
= Semplici comandi =
Linea 49: Linea 36:

Adesso proviamo qualche semplice comando:



{{{
Una volta avviato l'interprete, impariamo a usarlo: {{{
Linea 62: Linea 44:
Per indicare i blocchi di codice si usa l'indentazione.
L'indentazione non è quindi solo una buona abitudine ma in Python è __obbligatoria__.
Ad esempio il codice appartenente ad un ''ciclo'' __deve__ essere indentato: {{{
 >>>> i=0
>>> while i < 10:
... i=i+1
... print "il doppio di",
... print i,
... print " e' ",
... print i*2
...
il doppio di 1 e' 2
il doppio di 2 e' 4
il doppio di 3 e' 6
il doppio di 4 e' 8
il doppio di 5 e' 10
il doppio di 6 e' 12
il doppio di 7 e' 14
il doppio di 8 e' 16
il doppio di 9 e' 18
il doppio di 10 e' 20
>>>
}}}
Linea 63: Linea 68:
Altrimenti succede questo: {{{
>>> i=0
>>> while i < 10:
... i=i+1
  File "<stdin>", line 2
    i=i+1
    ^
IndentationError: expected an indented block
>>>
}}}
Linea 64: Linea 79:
Usciamo dall'interprete premendo CTRL+D oppure digitando

{{{
Usciamo dall'interprete premendo «`Ctrl+D`», oppure digitando: {{{
Linea 71: Linea 84:
Proviamo a realizzare un piccolo script! Aprite un editor di testo qualsiasi e scrivete: Proviamo ora a realizzare un piccolo script.
Linea 73: Linea 86:
{{{ Apriamo un editor di testo qualsiasi e inseriamo le seguenti righe: {{{#!python
Linea 75: Linea 88:
print "Hello World!" print "Ciao mondo!"
Linea 78: Linea 91:
Salvate in in un file hello.py
Adesso aprite una shell e spostatevi nella cartella dove avete salvato il file:

{{{
cd cartella_dove_avete_salvato_lo_script
Salviamo il file come `hello.py` e impostiamone i permessi di esecuzione: {{{
chmod a+x ciao.py
Linea 85: Linea 95:
date i permessi di esecuzione:

{{{
chmod a+x hello.py
Ora eseguiamo lo script: {{{
python ciao.py
Linea 91: Linea 99:
e lanciate lo script: Se non si è sbagliato qualcosa, si dovrebbero leggere le parole "Ciao mondo!" stampate a video.
Linea 93: Linea 101:
{{{
python hello.py
}}}
= Esempi =
Linea 97: Linea 103:
Se non avete sbagliato qualcosa dovreste vedere le parole "Hello World!" stampate a video.
----
CategoryComunita
Ora che vi abbiamo incuriosito un po' vi proponiamo, nelle pagine a seguire, diversi script esemplificativi a difficoltà crescente:
Linea 101: Linea 105:
Ora che vi abbiamo un po incuriosito vi proponiamo un'altro script a difficoltà crescente  * [:LinguaggioPython/Listati:LinguaggioPython/Listati] [[BR]]
 Esempi di alcuni programmi scritti in Python a difficoltà crescente

 * [:LinguaggioPython/GUI:LinguaggioPython/GUI] [[BR]]
 Esempi di alcuni programmi scritti in Python con semplice interfaccia grafica

= Risorse =

 * [http://www.python.it/] {it} [[BR]]
 Il sito di riferimento per i programmatori python italiani! Qui potete trovare le traduzioni in italiano della documentazione ufficiale nonchè le FAQ sul linguaggio.
 
 * [http://www.python.org/] {en} [[BR]]
 Il sito ufficiale del linguaggio python. Trovate la documentazione in inglese aggiornata all'ultima versione dell'interprete, in più tutte le novità e le iniziative che ruotano intorno a questo linguaggio.[[BR]]

= Curiosità... ma non troppo =

== Imparare Python: Un gioco da ragazzi con RUR-PLE! ==

L' Autore '''Andre' Roberge, © 2005, 2006''' ci spiega:[[BR]]
Linea 104: Linea 126:
# tutto cio che scrivo preceduto dal segno # viene considerato un commento
# questo è un commento
'''Che cosa e' RUR-PLE:'''[[BR]]
Linea 107: Linea 128:
{{{
#!/usr/bin/python
import sys
import string
import math
''' questa è un area di commento che uso per indicare cosa fa il programa o sorgente o script
    il programma principale o il main calcola l'area di un triangolo qualsiasi noti i suoi tre
    lati usiamo la formula di erone
    formula sqrt p*(p-a)*(p-b)*p(-c) sqrt = radice quadrata, p = (a+b+c)/2 a,b,c lati
    salvatelo sul disco con il nome che vi propongo Area_triangolo.py o come piu' vi piace
'''
a = input('inserisci il primo lato ')
print ' primo lato = ',a
b = input('inserisci il secondo lato ')
print ' secondo lato = ',b
c = input('inserisci il terzo lato ')
print ' terzo lato = ',c
print
print " ora calcolo l'area di questo triangolo"
print
p = (a+b+c)/2
s = math.sqrt(p*(p-a)*(p-b)*(p-c))
Semplicemnte, RUR-PLE e' un ambiente per imparare Python. Con l'assistenza di un robot di nome Reeborg, si puo' esplorare il piacere della programmazione usando il linguaggio Python. Un interprete standard è anche incluso come pure un editor Python con istantanee
caratteristiche di funzionamento
Linea 130: Linea 131:
print " l'area del triangolo e' =" ,s
}}}
[[BR]]
Questo semplice programma abortisce se nell'inserire il dato per errore digitiamo un carattere non numerico. E' necessario quindi ricorrrere al controllo del dato immesso. A questo scopo è stato preparato questo altro programmino che Chiamiamo Area_Triangolo2.py
{{{
#!/usr/bin/python
import sys
import math
import string
i = 0
l=[]
while True:
 a= raw_input('inserisci il '+str(i+1)+' lato ')
        for j in range(len(a)) :
  errato = 'F'
  if a[j] in string.digits:
   errato = 'F'
   continue #continua il ciclo for
  else:
   errato = 'T'
   print "hai digitato qualcosa che non è un numero.Riprova"
   break # termina il ciclo for
 if errato =='T':
  continue #continua il ciclo while
   
 i +=1
 l.append(float(a))
        if errato =='F'and i <3:
  
  continue # continua il ciclo while per passare al successivo input
 elif errato =='F' and i >=3:
  print ' primo lato = ',l[0]
  print
  print ' secondo lato = ',l[1]
  print
  print ' terzo lato = ',l[2]
  print
  p = (l[0]+l[1]+l[2])/2.0
  if p > l[0] and p>l[1] and p >l[2]:
   print " ora calcolo l'area di questo triangolo"
   break # esce dal ciclo while per fine input
  else:
   print "questi lati non appartengono ad un triangolo. Riprova "
   i =0
   l=[]
   continue # contonua nel ciclo while per ricominciare i nuovi input
 
 
  
 
'''Un po' di storia''' [[BR]]
Linea 181: Linea 133:
print La parola "robot" e' entrata nel nostro linguaggio intorno al 1920 , inventata dallo scrittore Ceco Karel Capek nel suo romanzo fantascentifico R.U.R. (Rossum's Universal Robots [il robot universale di Rossum]) . Capek, con questo romanzo, seppe come diffondere la parola robot in maniera disinvolta![[BR]]
Il none di Karel Capek viene conosciuto nel mondo dei computer nel 1981, quando Richard Pattis scrive un delizioso piccolo libro dal titolo Karel il Robot, una Gentile Introduzione alla Arte della Programmazione. In questo libro, Pattis introduce i principali concetti della programmazione sequenziale (includendo i cicli e le decisioni, ma non le variabili) usando il paradigma delle istruzioni, per istruire un robot capace di svolgere solo quattro azioni base (voltare a sinistra, muoversi un passo per volta in avanti, caricare e scaricare delle guide). Attraverso la magia della programmazione, il robot impara a combinare queste quattro azioni per portare avanti un compito a difficolta' crescente. Pattis ha usato il Pascal, il linguaggio preferito del momento ,per consentire al robot di "insegnarci" nuovi trucchi. Successivamente sono apparse nuove versioni di Karel il Robot , usate per introdurre vari linguaggi per computer, come Java e C++, che sono entrambi passati ad un approccio moderno Object-Oriented Programming (OOP) Programmazione Orientata agli Oggetti.[[BR]]
Questi linguggi, data la complessita' di Java e C++ che contrasta con la semplicita' del mondo di Robot, risultavano essere in contrasto appunto con l'idea di provvedere ad una Gentile Introduzione all'Arte della Programmazione [ Gentle Introduction to the Art of Programming.][[BR]]
Linea 183: Linea 137:
s = math.sqrt(p*(p-l[0])*(p-l[1])*(p-l[2])) Cosi' si penso di inserire il linguaggio Python!... Chiamato cosi', dopo il famoso Monty Python's Flying Circus, dal suo creatore , Guido van Rossum.
Python, come Java e C++, e' un linguaggio OOP . Inoltre Python permette anche la programmazione in stile non -OOP, piu' portata per interagire con il robot di Pattis. Una prima implementazione del robot di Karel in Python e' stata chiamata PyKarel. La corrente implemetazione e' chiamata Guido van Robot (GvR per brevita'), ed e' disponibile su sourceforge.net.[[BR]]
RUR: Un ambiente per imparare Python (RUR-PLE or Rur-ple or rur-ple) e' una "nuova e non consolidata" versione di GvR che estende l'idea di Pattis e consente l'uso di variabili nonche' funzioni e metodi, classi e oggetti. Rur-ple e' un completo ambiente, le sue lezioni contemplano l'uso di tutte le parole chiave di Python. Contiene anche un interprete ed un semplice editor per esplorare Python al di fuori del mondo Robot.[[BR]]
Reeborg e' un robot costruito nel 1981 secondo il modello di Pattis ... e comincia a mostrare la sua eta . Ha una perdita di olio, che ci consente di vedere le sue tracce. La sua bussola e' rotta; conosce solamente se ha la faccia a nord oppure no, diversamente da Karel o Guido che puo' determinare il suo orientamento rispetto ai quattro punti cardinali.[[BR]]
Karel il Robot di Pattis e' stato cosi chiamato dall' autore Karel Capek, che ha reso popolare la parola Robot con il suo romanzo Rossum's Universal Robots (RUR). Mentre RUR-PLE divide l'acronimo RUR , un modo per usare il Robot di Roberge . Tuttavia, attraverso la magia del linguaggio Python, di Guido van Rossum , potrete imparare come correggere e disegnarne uno migliore, degno del nome del Robot Universale Rossum.[[BR]]
Linea 185: Linea 143:
print " l'area del triangolo e' =" ,s
print
print "Fine programma ""
  
}}}
[[BR]]

Ora supponiamo di dover calcolare l'area di un appezzamento di terreno di svariati ettari e che
noi abbiamo scomposto in un numero finito di triangoli;
una volta nota l'area supponiamo che debba essere divisa, per volontà testamentarie, in tre parti
in funzione dell'età di tre fratelli I cui Nomi sono Angelo,Alberto,Amilcare o com volete voi.
[[BR]]
Useremo lo stesso programma Area_Triangolo 2 con qualche modifica o aggiunta e che chiameremo
Area_Triangolo3:py
{{{
#!/usr/bin/python
import sys
import math
import string
# fase di input
nomi = []
eta= []
lati= []
x= 1
while x <=3:
 a= raw_input('Inserici nome '+str(x)+' fratello ')
 #verifichiamo l'input immesso
 errore = 'F'
 for i in range(len(a)):
  if a[i] in string.letters:
   continue
  else:
   if i <= len(a):
    print "errore nell'immettere il nome .riprova"
    errore = 'T'
    break
 if errore == "T":
  continue
 else:
  # lo rendiamo tutto maiuscolo indipendentemente se lo sia o meno
  nomi.append(string.upper(a))
  print nomi
  x +=1
  
#ora prendiamo in input le loro eta
x = 0

while x < range(len(nomi)):
 
 a= raw_input("inserisci l'eta di "+nomi[x]+' ')
        for j in range(len(a)) :
  errato = 'F'
  if a[j] in string.digits:
   errato = 'F'
   continue #continua il ciclo for
  else:
   errato = 'T'
   print "hai digitato qualcosa che non è un numero.Riprova"
   break # termina il ciclo for
 if errato =='T':
  continue #continua il ciclo while
   
 x +=1
 eta.append(int(a))
        if errato =='F'and x <3:
  
  continue # continua il ciclo while per passare al successivo input
 elif errato =='F' and x >=3:
  print ' Eta di' +nomi[0] +" "+ str( int(eta[0]))
  print
  print ' Eta di' +nomi[1] +" "+ str( int(eta[1]))
  print
  print ' Eta di' +nomi[2] +" "+ str( int(eta[2]))
  print
  break
#input dei dati per il calcolo dell'area dell'appezzamento
  
i = 0
l=[]
tria = []
while True:
 a= raw_input('inserisci il '+str(i+1)+' lato ')
        for j in range(len(a)) :
  errato = 'F'
  if a[j] in string.digits:
   errato = 'F'
   continue #continua il ciclo for
  else:
   errato = 'T'
   print "hai digitato qualcosa che non è un numero.Riprova"
   break # termina il ciclo for
 if errato =='T':
  continue #continua il ciclo while
   
 i +=1
 l.append(float(a))
        if errato =='F'and i <3:
  
  continue # continua il ciclo while per passare al successivo input
 elif errato =='F' and i >=3:
  print ' primo lato = ',l[0]
  print
  print ' secondo lato = ',l[1]
  print
  print ' terzo lato = ',l[2]
  print
  p = (l[0]+l[1]+l[2])/2.0
  if p > l[0] and p>l[1] and p >l[2]:
   print " l'area di questo triangolo e' calcolabile"
   tria.append(l)
   l=[]
   si = raw_input(" hai finito di immettere lati dei triangoli ? conferma con S/s ")
   if si == "S" or si =='s':
    print "Inizia la fase di calcolo "
    break # esce dal ciclo while per fine input
   else:
    i =0
    l=[]
    continue # continua nel ciclo while per input dati nuovo triangolo
  else:
   print "questi lati non appartengono ad un triangolo. Riprova "
   i =0
   l=[]
   continue # continua nel ciclo while perche dati in input del triangolo errati
 
 
#fase di calcolo area appezzamento
n = len(tria) # il calcolo dell'area verrà ripetuto n volte una per ogni triangolo

p = 0
stot = 0
for i,l in enumerate(tria):
 for j in range( len(l)):
  print l[j]
         p = p+l[j]
        print "semiper. nel "+str(i+1)+ " triangolo = "+ str(p/2.0)
        print
 p=p/2.0
 s = math.sqrt(p*(p-l[0])*(p-l[1])*(p-l[2]))
 print "area "+str(i+1)+ " triangolo = "+ str(s)
 print
 stot = stot +s
 p=0
print
print "l'area totale dell'appezamento di terreno e di mq " + str(stot)
print
print "ora calcoliamo quanto terreno spetta a ciascuno dei tre fratelli"

seta = 0
for i in eta:
 seta=seta+i
 
 
areau =(stot/seta)

for i in eta:
 a =areau*i
 nomi.append(a)
for i in range(0,3):
 print "l'area spettante a " +nomi[i] + " somma mq. "+ str(nomi[i+3])
        print
 
print' Fine programma '

}}}
[[BR]]
Questo programma cosi come è realizzato è un po troppo lungo e considerati i numerosi cicli in esso contenuto può farci incorrere in errori. Come possiamo renderlo piu snello e piu facilemnte
Governabile?[[BR]]
Si Lascia al lettore questo compito facendo presente che ci sono diverse soluzioni che attendiamo
come segno tangibile della attenzione che ci avete prestato.
----
CategoryNuoviDocumenti

BR

Introduzione

Python è un linguaggio di programmazione ideato da Guido Von Rossum nel 1991 e derivato da un precedente linguaggio chiamato ABC. È interpretato e quindi caratterizzato da una grande portabilità su differenti piattaforme (Linux, Windows, Mac, ...).BR Python è estensibile tramite il linguaggio C. Può inoltre appoggiarsi a molte famose librerie scritte in C o C++ per la creazione di GUI (wxpython, pygtk...), tool per lo svilippo di giochi (pygame, pysdl...), database (mysqldb, ...).BR È un linguaggio ad alto livello, ha una sintassi molto piacevole e intuitiva (ideale per chi si avvicina alla programmazione). I programmi scritti in python risultano spesso molto sintetici ed eleganti nella forma (ma ricordiamo che tutto dipende anche dallo stile personale del programmatore! ;) ).BR È nativamente un linguaggio orientato agli oggetti ma a differenza di altri linguaggi come il java permette anche uno stile procedurale e/o funzionale.BR Ideale per realizzare applicazioni velocemnete, è utilizzato per una vasta gamma di scopi: scripting, creazione di programmi completi, estensioni di programmi scritti in C, realizzazione di prototipi di applicazioni che andranno poi riscritte in altri linguaggi.

Installazione

Con l'installazione predefinita di Ubuntu l'interprete python viene già installato. In caso contrario, è sufficiente installare il pacchetto python da utilizzando [:SynapticHowto:Synaptic] o da riga di comando:

sudo apt-get install python

Verifica della configurazione

Bene ora non resta che lanciare l'interprete interattivo e fare pratica.

Aprire un terminale e digitare:

python

Dovrebbe apparire qualcosa del tipo:

Python 2.4.3 (#2, Apr 27 2006, 14:43:58)
[GCC 4.0.3 (Ubuntu 4.0.3-1ubuntu5)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>

Semplici comandi

Una volta avviato l'interprete, impariamo a usarlo:

>>> print  "Hello World!"
Hello World!
>>> print  2+3
5
>>> print  "2 + 3 = ",  2+3
2 + 3 = 5

Per indicare i blocchi di codice si usa l'indentazione. L'indentazione non è quindi solo una buona abitudine ma in Python è obbligatoria. Ad esempio il codice appartenente ad un ciclo deve essere indentato:

 >>>> i=0
>>> while i < 10:
...     i=i+1
...     print "il doppio di",
...     print i,
...     print " e' ",
...     print i*2
...
il doppio di 1  e'  2
il doppio di 2  e'  4
il doppio di 3  e'  6
il doppio di 4  e'  8
il doppio di 5  e'  10
il doppio di 6  e'  12
il doppio di 7  e'  14
il doppio di 8  e'  16
il doppio di 9  e'  18
il doppio di 10  e'  20
>>>

Altrimenti succede questo:

>>> i=0
>>> while i < 10:
... i=i+1
  File "<stdin>", line 2
    i=i+1
    ^
IndentationError: expected an indented block
>>>

Usciamo dall'interprete premendo «Ctrl+D», oppure digitando:

>>> import sys
>>> sys.exit()

Proviamo ora a realizzare un piccolo script.

Apriamo un editor di testo qualsiasi e inseriamo le seguenti righe:

   1 #!/usr/bin/python
   2 print  "Ciao mondo!"

Salviamo il file come hello.py e impostiamone i permessi di esecuzione:

chmod a+x ciao.py

Ora eseguiamo lo script:

python ciao.py

Se non si è sbagliato qualcosa, si dovrebbero leggere le parole "Ciao mondo!" stampate a video.

Esempi

Ora che vi abbiamo incuriosito un po' vi proponiamo, nelle pagine a seguire, diversi script esemplificativi a difficoltà crescente:

  • [:LinguaggioPython/Listati:LinguaggioPython/Listati] BR Esempi di alcuni programmi scritti in Python a difficoltà crescente

  • [:LinguaggioPython/GUI:LinguaggioPython/GUI] BR Esempi di alcuni programmi scritti in Python con semplice interfaccia grafica

Risorse

  • [http://www.python.it/] {it} BR Il sito di riferimento per i programmatori python italiani! Qui potete trovare le traduzioni in italiano della documentazione ufficiale nonchè le FAQ sul linguaggio.

  • [http://www.python.org/] {en} BR Il sito ufficiale del linguaggio python. Trovate la documentazione in inglese aggiornata all'ultima versione dell'interprete, in più tutte le novità e le iniziative che ruotano intorno a questo linguaggio.BR

Curiosità... ma non troppo

Imparare Python: Un gioco da ragazzi con RUR-PLE!

L' Autore Andre' Roberge, © 2005, 2006 ci spiega:BR

Che cosa e' RUR-PLE:BR

Semplicemnte, RUR-PLE e' un ambiente per imparare Python. Con l'assistenza di un robot di nome Reeborg, si puo' esplorare il piacere della programmazione usando il linguaggio Python. Un interprete standard è anche incluso come pure un editor Python con istantanee caratteristiche di funzionamento

Un po' di storia BR

La parola "robot" e' entrata nel nostro linguaggio intorno al 1920 , inventata dallo scrittore Ceco Karel Capek nel suo romanzo fantascentifico R.U.R. (Rossum's Universal Robots [il robot universale di Rossum]) . Capek, con questo romanzo, seppe come diffondere la parola robot in maniera disinvolta!BR Il none di Karel Capek viene conosciuto nel mondo dei computer nel 1981, quando Richard Pattis scrive un delizioso piccolo libro dal titolo Karel il Robot, una Gentile Introduzione alla Arte della Programmazione. In questo libro, Pattis introduce i principali concetti della programmazione sequenziale (includendo i cicli e le decisioni, ma non le variabili) usando il paradigma delle istruzioni, per istruire un robot capace di svolgere solo quattro azioni base (voltare a sinistra, muoversi un passo per volta in avanti, caricare e scaricare delle guide). Attraverso la magia della programmazione, il robot impara a combinare queste quattro azioni per portare avanti un compito a difficolta' crescente. Pattis ha usato il Pascal, il linguaggio preferito del momento ,per consentire al robot di "insegnarci" nuovi trucchi. Successivamente sono apparse nuove versioni di Karel il Robot , usate per introdurre vari linguaggi per computer, come Java e C++, che sono entrambi passati ad un approccio moderno Object-Oriented Programming (OOP) Programmazione Orientata agli Oggetti.BR Questi linguggi, data la complessita' di Java e C++ che contrasta con la semplicita' del mondo di Robot, risultavano essere in contrasto appunto con l'idea di provvedere ad una Gentile Introduzione all'Arte della Programmazione [ Gentle Introduction to the Art of Programming.]BR

Cosi' si penso di inserire il linguaggio Python!... Chiamato cosi', dopo il famoso Monty Python's Flying Circus, dal suo creatore , Guido van Rossum. Python, come Java e C++, e' un linguaggio OOP . Inoltre Python permette anche la programmazione in stile non -OOP, piu' portata per interagire con il robot di Pattis. Una prima implementazione del robot di Karel in Python e' stata chiamata PyKarel. La corrente implemetazione e' chiamata Guido van Robot (GvR per brevita'), ed e' disponibile su sourceforge.net.BR RUR: Un ambiente per imparare Python (RUR-PLE or Rur-ple or rur-ple) e' una "nuova e non consolidata" versione di GvR che estende l'idea di Pattis e consente l'uso di variabili nonche' funzioni e metodi, classi e oggetti. Rur-ple e' un completo ambiente, le sue lezioni contemplano l'uso di tutte le parole chiave di Python. Contiene anche un interprete ed un semplice editor per esplorare Python al di fuori del mondo Robot.BR Reeborg e' un robot costruito nel 1981 secondo il modello di Pattis ... e comincia a mostrare la sua eta . Ha una perdita di olio, che ci consente di vedere le sue tracce. La sua bussola e' rotta; conosce solamente se ha la faccia a nord oppure no, diversamente da Karel o Guido che puo' determinare il suo orientamento rispetto ai quattro punti cardinali.BR Karel il Robot di Pattis e' stato cosi chiamato dall' autore Karel Capek, che ha reso popolare la parola Robot con il suo romanzo Rossum's Universal Robots (RUR). Mentre RUR-PLE divide l'acronimo RUR , un modo per usare il Robot di Roberge . Tuttavia, attraverso la magia del linguaggio Python, di Guido van Rossum , potrete imparare come correggere e disegnarne uno migliore, degno del nome del Robot Universale Rossum.BR


CategoryNuoviDocumenti