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 69 e 70
Versione 69 del 14/03/2011 12.57.22
Dimensione: 5337
Autore: localhost
Commento: converted to 1.6 markup
Versione 70 del 02/01/2017 17.45.28
Dimensione: 8530
Autore: jeremie2
Commento: Revisione globale - introdotta versione 3
Le cancellazioni sono segnalate in questo modo. Le aggiunte sono segnalate in questo modo.
Linea 6: Linea 6:
<<Indice>> <<Indice(depth=1)>>
Linea 10: Linea 10:
'''Python''' è un linguaggio di programmazione ideato da Guido Von Rossum nel 1991 e derivato da un precedente linguaggio chiamato ABC. È interpretato e quindi eseguibile su ogni piattaforma per la quale ne esista l'interprete (Linux, Windows, Mac, Symbian ...). '''Python''' è un linguaggio di programmazione ad [[https://it.wikipedia.org/wiki/Linguaggio_di_programmazione_ad_alto_livello|alto livello]] che ha raggiunto una grandissima popolarità ed è utilizzato in molti ambiti, dall'utilizzo di semplici script personali fino alla creazione di progetti altamente professionali.
Linea 12: Linea 12:
Python può appoggiarsi a diverse librerie per la creazione di GUI (wxpython, pygtk, pygq...), tool per lo sviluppo di giochi (pygame, pysdl...), per la lettura di file mpeg (pymad), database (mysqldb, ...). L'utilizzo di una sintassi pulita e ordinata legate a una certa facilità di utilizzo, hanno fatto si che col tempo '''Python''' si sia rivelato ottimale come primo linguaggio da imparare per chi è interessato ad affacciarsi al mondo della programmazione.
Linea 14: Linea 14:
È 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! ). La seguente pagina intende solo mostrare come utilizzare gli strumenti basilari su Ubuntu. Per approfondire l'utilizzo di '''Python''' si rimanda alla copiosa documentazione presente sul web. Nel capitolo [[#guide|Guide per principianti]] sono presenti alcune delle più apprezzate guide per muovere i primi passi.
Linea 16: Linea 16:
È nativamente un linguaggio orientato agli oggetti ma a differenza di altri linguaggi come il java permette anche uno stile procedurale e/o funzionale. = Versioni Python 2 e 3 =
Linea 18: Linea 18:
Ideale per realizzare applicazioni velocemente, è 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. Su Ubuntu vengono preinstallate 2 differenti versioni: '''Python 2''' e '''Python 3'''.<<BR>>
La nascita della versione 3 ha determinato un punto di rottura con il passato, tanto che le due versioni sono incompatibili fra loro. La versione 2, più precisamente '''Python 2.7''' sarà supportata '''fino al 2020'''. Nel frattempo non verrà ulteriormente sviluppata, ricevendo solo aggiornamenti di sicurezza.
Linea 20: Linea 21:
= Installazione = Questo ha generato una lenta situazione di transizione, dove lo sviluppo di nuove funzionalità è incentrato su '''Python 3''' ma una mole considerevole di progetti si basano ancora su '''Python 2'''.
Linea 22: Linea 23:
Con l'installazione predefinita di '''Ubuntu''' l'interprete python è già presente nel sistema. In caso contrario, è sufficiente installare il pacchetto [[apt://python | python]]. == Situazione su Ubuntu ==
Linea 24: Linea 25:
= Verifica Configurazione =  * '''Desktop''': con il pacchetto di installazione [[apt://python|python]], così come il comando da terminale, si intende la '''versione 2.7'''. Il pacchetto [[apt://python3|python3]] e il relativo comando da terminale fanno riferimento, a seconda della versione di Ubuntu utilizzata, alla versione '''3.4''', '''3.5''', ecc..<<BR>>Pertanto col generico '''python''' sul desktop Ubuntu si intende ancora la '''versione 2'''.
Linea 26: Linea 27:
Bene ora non resta che lanciare l'interprete interattivo e fare pratica.  * '''Mobile''': su [[UbuntuPhone|Ubuntu Phone]] è installata in modo predefinito la sola versione 3, nominata '''python3'''.
Linea 28: Linea 29:
Aprire un terminale e digitare:{{{ = Shell python =

Come consuetudine per la realizzazione di programmi si utilizzano file di testo sui quali scrivere il codice sorgente (vedere [[#script|relativo capitolo]]). Tuttavia è possibile avviare all'interno del terminale una '''shell python''' interattiva sulla quale poter testare porzioni di codice.

Avviare il [[AmministrazioneSistema/RigaDiComando|terminale]].
 * '''Python 2''': il comando:{{{
Linea 30: Linea 36:
}}}

D
ovrebbe apparire qualcosa del tipo:{{{
Python 2.6.5 (r265:79063, Apr 16 2010, 13:09:56)
[GCC 4.4.3] on linux2
}}}avvierà la versione 2.7, oltre al prompt dei comandi verrà visualizzata l'intestazione:{{{
Python 2.7.6 (default, Oct 26 2016, 20:30:19)
[GCC 4.8.4] on linux2
Linea 38: Linea 42:
 * '''Python 3''': il comando:{{{
python3
}}}avvierà la versione 3 predefinita sul proprio sistema, ad es. la 3.4 su Ubuntu 14.04:{{{
Python 3.4.3 (default, Nov 17 2016, 01:08:31)
[GCC 4.8.4] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>
}}}Se sono state installate versioni successive, ad es. la 3.5 e la si vuole utilizzare, sarà sufficiente specificarlo nel comando:{{{
python3.5
}}}
Linea 39: Linea 53:
= Semplici comandi = == Esempi in Python 2 ==
Linea 41: Linea 55:
Una volta avviato l'interprete, imparare ad usarlo:{{{ ||<tablestyle="text-align: justify; width:100%;" style="border:none;" 5%><<Immagine(Icone/Grandi/info.png,,center)>> ||<style="padding:0.5em; border:none;">Per testare i seguenti esempi è sufficiente digitare i comandi che appaiono accanto alla tripla freccia del prompt ('''>>>''') e quindi premere '''Invio'''.||

 * Alcune semplici istruzioni da passare al prompt per stampare scritte e per effettuare calcoli aritmetici:{{{
Linea 50: Linea 66:
L'utilizzo è molto semplice ed intuitivo e la maggior parte dei comandi sono semplici parole provenienti dal vocabolario inglese.

Per indicare i blocchi di codice si usa l'indentazione. Essa in Python non è solo una buona abitudine del programmatore ma è obbligatorio. Per esempio il codice appartenente a un ciclo deve essere indentato:{{{
 * Per indicare i blocchi di codice si usa l'indentazione creata tramite il tasto '''TAB''' (Tab ⇆). In '''Python''' non è solo una buona abitudine del programmatore ma è obbligatoria. Per esempio il codice appartenente a un ciclo deve essere indentato:{{{
Linea 54: Linea 68:
>>> while i<10: >>> while i<4:
Linea 62: Linea 76:
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 69: Linea 77:
}}}

Altrimenti succede questo:{{{
}}}Altrimenti succede questo:{{{
Linea 81: Linea 87:

Uscire dall'interprete premendo '''Ctrl+D''', oppure digitando il seguente comando in una finestra di terminale:{{{
 * Uscire dall'interprete premendo '''Ctrl+D''', oppure digitando il comando:{{{
Linea 86: Linea 91:
Per provare a realizzare un piccolo script procedere come segue: <<Anchor(script)>>
= Script =
Linea 88: Linea 94:
 * Aprire un [[Ufficio/EditorDiTesto|editor di testo]] e inserire le seguenti righe:{{{
#!/usr/bin/python
Come esempio pratico verrà creato un file con del codice ('''Python 2''') al suo interno che potrà essere richiamato dal terminale per essere eseguito.

<<Anchor(primo)>>
== Primo metodo ==

 0. Aprire un [[Ufficio/EditorDiTesto|editor di testo]] e inserire le seguenti righe:{{{
Linea 92: Linea 102:

 * Salvare il file come `ciao.py`.
 * Spostarsi nella cartella contenente il file tramite il comando:{{{
cd
}}}
 * Digitare il seguente comando:{{{
 0. Salvare nella propria '''Home''' il file come `ciao.py`.
 0. Da [[AmministrazioneSistema/RigaDiComando|terminale]] digitare:{{{
Linea 100: Linea 106:
 per eseguire lo script. Se non si è sbagliato qualcosa, si dovrebbero leggere le parole «"Ciao mondo!"» stampate a video.  0. Verrà restituita la scritta:{{{
Ciao mondo!
}}}
Linea 102: Linea 110:
 * Impostando i permessi di esecuzione sullo script con il comando:{{{ <<Anchor(secondo)>>
== Secondo metodo ==

Nel comando del [[#primo|primo metodo]] `python ciao.py` può essere evitata la digitazione del termine `python`, inserendo all'inizio dello script la direttiva:{{{
#!/usr/bin/env python
#!/usr/bin/env python
}}}In alternativa è comune trovare la forma `#!/usr/bin/python`.

 0. Modificare il contenuto dello script in modo che risulti:{{{
#!/usr/bin/env python
#!/usr/bin/env python
print "Ciao mondo!"
}}}
 0. Rendere lo script eseguibile con il comando:{{{
Linea 105: Linea 126:

 è possibile eseguirlo più semplicemente digitando:{{{
 0. Lanciare quindi lo script con il comando:{{{
Linea 108: Linea 128:
}}}che restituirà la scritta:{{{
Ciao mondo!
Linea 110: Linea 132:
 questo grazie alla prima riga dello script, che serve proprio a richiamare il comando python per noi. == Alcune differenze con Python3 ==
Linea 112: Linea 134:
= Esempi =  * Partendo dallo script [[#primo|iniziale]] in '''Python 3''' si nota già una differenza fondamentale nella sintassi. L'istruzione `print` è stata sostituita con la funzione `print()`. Pertanto il comando nello script diviene:{{{
print("Ciao mondo!")
}}}
 * Il comando di avvio del primo metodo deve essere adattato alla versione '''3''' di '''Python''', pertanto diviene:{{{
python3 ciao.py
}}}oppure specificando una versione in particolare, ad es. la 3.5, il comando diviene{{{
python3.5 ciao.py
}}}
 * Andando a inserire la direttiva `#!/usr/bin/env python` come nel [[#secondo|secondo metodo]], anch'essa dovrà essere rapportata alla versione di '''Python''' desiderata, quindi:{{{
#!/usr/bin/env python3
#!/usr/bin/env python3
}}}oppure specificandone una versione particolare per un determinato utilizzo. Ad es. per la 3.5:{{{
#!/usr/bin/env python3.5
#!/usr/bin/env python3.5
}}}

= Esempi di script =
Linea 119: Linea 157:
<<Anchor(guide)>>
= Guide per principianti =

I seguenti testi sono indicati per chiunque si voglia avvicinare per la prima volta a un linguaggio di programmazione.

== In italiano ==

 * '''Python 2''': [[http://www.python.it/doc/Howtothink/Howtothink-html-it/index.htm|Pensare da informatico]] di Allen B. Downey, Jeffrey Elkner e Chris Meyers.
 * '''Python 2''': [[http://www.python.it/doc/AGauld/index.html|Imparare a programmare]] di Alan Gauld.
== In inglese ==

 * '''Python 3''':[[http://interactivepython.org/courselib/static/thinkcspy/index.html|How to think like a computer scientist]] riadattata da Brad Miller and David Ranum.
 * '''Python 3''': [[https://en.wikibooks.org/wiki/Non-Programmer's_Tutorial_for_Python_3|Non-Programmer's Tutorial for Python 3]] Josh Cogliati.
 * '''Python 2''': [[https://learnpythonthehardway.org/book|Learn Python the hard way]] Zed A. Shaw
Linea 121: Linea 174:
 * [[http://www.python.it|python.it]]: 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|python.org]]: 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.
 * [[http://www.python.it/doc/Howtothink/Howtothink-html-it/index.htm|Pensare da informatico]] di Allen B. Downey, Jeffrey Elkner e Chris Meyers. Questa guida è altamente consigliata in quanto è ritenuta la migliore da molti per iniziare con il Python.
 * [[http://www.python.it/doc/AGauld/index.html|Imparare a programmare]] di Alan Gauld: Due guide sull'uso del linguaggio Python adatte anche a chi in generale non ha esperienza nell'ambito della programmazione.
 * [[https://www.python.org|Sito ufficiale]]
 * [[https://docs.python.org|Documentazione ufficiale]]
 * [[http://www.python.it|Comunità italiana di Python]]
 * [[https://it.wikipedia.org/wiki/Python|Voce enciclopedica]]


Problemi in questa pagina? Segnalali in questa discussione

Introduzione

Python è un linguaggio di programmazione ad alto livello che ha raggiunto una grandissima popolarità ed è utilizzato in molti ambiti, dall'utilizzo di semplici script personali fino alla creazione di progetti altamente professionali.

L'utilizzo di una sintassi pulita e ordinata legate a una certa facilità di utilizzo, hanno fatto si che col tempo Python si sia rivelato ottimale come primo linguaggio da imparare per chi è interessato ad affacciarsi al mondo della programmazione.

La seguente pagina intende solo mostrare come utilizzare gli strumenti basilari su Ubuntu. Per approfondire l'utilizzo di Python si rimanda alla copiosa documentazione presente sul web. Nel capitolo Guide per principianti sono presenti alcune delle più apprezzate guide per muovere i primi passi.

Versioni Python 2 e 3

Su Ubuntu vengono preinstallate 2 differenti versioni: Python 2 e Python 3.
La nascita della versione 3 ha determinato un punto di rottura con il passato, tanto che le due versioni sono incompatibili fra loro. La versione 2, più precisamente Python 2.7 sarà supportata fino al 2020. Nel frattempo non verrà ulteriormente sviluppata, ricevendo solo aggiornamenti di sicurezza.

Questo ha generato una lenta situazione di transizione, dove lo sviluppo di nuove funzionalità è incentrato su Python 3 ma una mole considerevole di progetti si basano ancora su Python 2.

Situazione su Ubuntu

  • Desktop: con il pacchetto di installazione python, così come il comando da terminale, si intende la versione 2.7. Il pacchetto python3 e il relativo comando da terminale fanno riferimento, a seconda della versione di Ubuntu utilizzata, alla versione 3.4, 3.5, ecc..
    Pertanto col generico python sul desktop Ubuntu si intende ancora la versione 2.

  • Mobile: su Ubuntu Phone è installata in modo predefinito la sola versione 3, nominata python3.

Shell python

Come consuetudine per la realizzazione di programmi si utilizzano file di testo sui quali scrivere il codice sorgente (vedere relativo capitolo). Tuttavia è possibile avviare all'interno del terminale una shell python interattiva sulla quale poter testare porzioni di codice.

Avviare il terminale.

  • Python 2: il comando:

    python

    avvierà la versione 2.7, oltre al prompt dei comandi verrà visualizzata l'intestazione:

    Python 2.7.6 (default, Oct 26 2016, 20:30:19) 
    [GCC 4.8.4] on linux2
    Type "help", "copyright", "credits" or "license" for more information.
    >>> 
  • Python 3: il comando:

    python3

    avvierà la versione 3 predefinita sul proprio sistema, ad es. la 3.4 su Ubuntu 14.04:

    Python 3.4.3 (default, Nov 17 2016, 01:08:31) 
    [GCC 4.8.4] on linux
    Type "help", "copyright", "credits" or "license" for more information.
    >>>

    Se sono state installate versioni successive, ad es. la 3.5 e la si vuole utilizzare, sarà sufficiente specificarlo nel comando:

    python3.5

Esempi in Python 2

Per testare i seguenti esempi è sufficiente digitare i comandi che appaiono accanto alla tripla freccia del prompt (>>>) e quindi premere Invio.

  • Alcune semplici istruzioni da passare al prompt per stampare scritte e per effettuare calcoli aritmetici:

    >>> 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 creata tramite il tasto TAB (Tab ⇆). In Python non è solo una buona abitudine del programmatore ma è obbligatoria. Per esempio il codice appartenente a un ciclo deve essere indentato:

    >>> i=0
    >>> while i<4:
    ...     i+=1
    ...     print "il doppio di", i, " e' ", 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
    >>>

    Altrimenti succede questo:

    >>> i=0
    >>> while i < 10:
    ... i=i+1
      File "<stdin>", line 2
        i=i+1
        ^
    IndentationError: expected an indented block
    >>>
  • Uscire dall'interprete premendo Ctrl+D, oppure digitando il comando:

    >>> exit()

Script

Come esempio pratico verrà creato un file con del codice (Python 2) al suo interno che potrà essere richiamato dal terminale per essere eseguito.

Primo metodo

  1. Aprire un editor di testo e inserire le seguenti righe:

    print  "Ciao mondo!"
  2. Salvare nella propria Home il file come ciao.py.

  3. Da terminale digitare:

    python ciao.py
  4. Verrà restituita la scritta:

    Ciao mondo!

Secondo metodo

Nel comando del primo metodo python ciao.py può essere evitata la digitazione del termine python, inserendo all'inizio dello script la direttiva:

#!/usr/bin/env python

In alternativa è comune trovare la forma #!/usr/bin/python.

  1. Modificare il contenuto dello script in modo che risulti:

    #!/usr/bin/env python
    print  "Ciao mondo!"
  2. Rendere lo script eseguibile con il comando:

    chmod u+x ciao.py
  3. Lanciare quindi lo script con il comando:

    ./ciao.py

    che restituirà la scritta:

    Ciao mondo!

Alcune differenze con Python3

  • Partendo dallo script iniziale in Python 3 si nota già una differenza fondamentale nella sintassi. L'istruzione print è stata sostituita con la funzione print(). Pertanto il comando nello script diviene:

    print("Ciao mondo!")
  • Il comando di avvio del primo metodo deve essere adattato alla versione 3 di Python, pertanto diviene:

    python3 ciao.py

    oppure specificando una versione in particolare, ad es. la 3.5, il comando diviene

    python3.5 ciao.py
  • Andando a inserire la direttiva #!/usr/bin/env python come nel secondo metodo, anch'essa dovrà essere rapportata alla versione di Python desiderata, quindi:

    #!/usr/bin/env python3

    oppure specificandone una versione particolare per un determinato utilizzo. Ad es. per la 3.5:

    #!/usr/bin/env python3.5

Esempi di script

Nelle pagine a seguire, sono presenti diversi script esemplificativi a difficoltà crescente:

  • Listati: esempi di alcuni programmi scritti in Python a difficoltà crescente.

  • Interfacce grafiche: esempi di alcuni programmi scritti in Python con semplice interfaccia grafica.

Guide per principianti

I seguenti testi sono indicati per chiunque si voglia avvicinare per la prima volta a un linguaggio di programmazione.

In italiano

In inglese

Ulteriori risorse


CategoryProgrammazione