Beautiful is better than ugly.
Explicit is better than implicit.
Simple is better than complex.
Complex is better than complicated.
(The zen of python)
Andrea Manzini ilmanzo@gmail.com
il nome Python deriva da uno show comico trasmesso dalla BBC: "Monty Python's Flying Circus", di cui Van Rossum era appassionato.
Van Rossum inizio' a lavorare su Python nel 1989, le prime release sono del 1991, mentre la versione 1 e' del 1994
1.0 - 1.6 Gennaio 1994 - Settembre 2000
2.0 - 2.7 Ottobre 2000 - Luglio 2010
3.0 - 3.5 Dicembre 2008 - Settembre 2015
La versione che viene attualmente sviluppata e' la versione 3, mentre la versione 2 e' ferma alla versione 2.7, del 2010, ove sono state riportate alcune funzionalita' della versione 3.
l'implementazione di riferimento di Python e' scritta in C e disponibile per tutti i sistemi operativi
il sorgente e' distribuito con la PSF License che e' compatibile con la GPL
esistono altre implementazioni : Jython, IronPython, PyPy ...
le variabili possono cambiare tipo nel corso dell'esecuzione del codice. Non viene quindi effettuato alcun controllo statico sul tipo di valore assegnato ad una variabile.
le operazioni tra tipi di dati diversi devono essere specificate esplicitamente nel codice (casting). Non vengono effettuate conversioni automatiche dei tipi delle variabili.
Gestione automatizzata della memoria (Garbage Collection)
Python permette la programmazione iterativa, object-oriented e funzionale.
La libreria standard di Python contiene moduli delle piu' svariate funzionalità: applicazioni web, interfacce grafiche, database, aritmetica, espressioni regolari, email, crittazione, xml, calendario, ecc.
L'installazione di Python comprende sempre la libreria standard considerata elemento fondamentale: la cosidetta filosofia "Batteries Included"
https://wiki.python.org/moin/OrganizationsUsingPython
Google, Facebook, Yahoo, Dropbox, EventBrite, Reddit, Disqus, NASA usano Python
Python facilita il compito del programmatore sollevandolo dalle operazioni di basso livello tipiche di linguaggi come C/C++ e simili
Seguendo alcune semplici regole di sviluppo e' possibile creare software multi piattaforma anche se non si conosce nel dettaglio l'architettura su cui sara' eseguito
Facilitare lo sviluppo del software significa permettere ad un numero maggiore di persone di contribuire a progetti OpenSource
from datetime import date
print(date(2015,12,25)-date.today())
somma=0
for i in range(1,10000000,2):
somma=somma+i
print(somma)
prezzi = {'mele': 0.40,'banane': 0.50,'arance': 0.30}
cestino = {
'arance': 6,
'banane': 3,
'mele': 4,
}
totale = sum(prezzi[frutto] * cestino[frutto]
for frutto in cestino)
print('Devo pagare €%.2f' % totale)
installo il modulo apposito scaricandolo da internet
pip install ystockquote
leggo la documentazione sul sito e lo uso nel mio codice
import ystockquote
ystockquote.get_price('GOOG')
ystockquote.get_all('UCG.MI')
import tkinter as tk
class App(tk.Frame):
def __init__(self, master=None):
tk.Frame.__init__(self,master)
self.pack()
self.btn = tk.Button(self,
text="STRUCA EL BOTON", command=self.ciao)
self.btn.pack()
def ciao(self):
print("ciao vecio!")
app = App()
app.mainloop()
pip install Pillow
import os
from PIL import Image,ImageStat
#converte immagine in scala di grigio,
#per calcolare la luminosita' media
def brightness( im_file ):
im = Image.open(im_file).convert('L')
stat = ImageStat.Stat(im)
return stat.rms[0]
#percorre ricorsivamente dalla directory
#'foto' in giu' tutti i file
for root, directories, filenames in os.walk('foto'):
for filename in filenames:
immagine=os.path.join(root,filename)
if brightness(immagine)<50:
print("eog '"+immagine+"'")
ognuno di questi argomenti meriterebbe un corso a parte
*il 23 portare pandoro e spumante!
Table of Contents | t |
---|---|
Exposé | ESC |
Full screen slides | e |
Presenter View | p |
Source Files | s |
Slide Numbers | n |
Toggle screen blanking | b |
Show/hide slide context | c |
Notes | 2 |
Help | h |