Python e il metodo setdefault

Note to self (pun intended): questo post rappresenta una sorta di appunto mentale per ricordarmi il funzionamento di setdefault in Python, visto che puntualmente mi trovo ad utilizzarlo. setdefault è utilizzato sui dizionari (dict) e permette di impostare una chiave di default durante una set. Mi spiego meglio con un esempio: >>> D {1: ‘leonard’, … Continue reading Python e il metodo setdefault

Python: scriviamo un quine

Una sfida che intriga molti programmatori è quella di scrivere un quine, ovvero quello di scrivere un programma che stampi il proprio sorgente. Partiamo con la definizione più semplice, e man mano aggiungiamo i vincoli necessari. Un programmatore furbo potrebbe stampare il contenuto del sorgente semplicemente aprendolo e stampando il contenuto: import sys print open(sys.argv[0],’r’).read() … Continue reading Python: scriviamo un quine

Trenitalia e Viaggiatreno: come implementare un servizio “fai da te” per avere le informazioni dello stato di un treno via SMS

Da quando sono diventato un pendolare (per lavoro), ho iniziato a (ri)frequentare assiduamente le stazioni ferroviarie e i treni di Trenitalia. Dopo un paio di settimane passate sui treni, mi sono accorto di un servizio interessante: il sito Viaggiatreno: il sito contiene le informazioni sui treni (informazioni in tempo reale sullo stato di un treno … Continue reading Trenitalia e Viaggiatreno: come implementare un servizio “fai da te” per avere le informazioni dello stato di un treno via SMS

Python: come ordinare un dizionario [dict] per chiave o per valore

In Python, i dizionari (dict) sono una struttura dati associativa che associa una chiave ad un valore (k, v): d = {} d[‘bart’] = ‘marge’ d[‘maggie’] = ‘homer’ d[‘milhouse’] = ‘nelson’ d[‘lisa’] = ‘skinner’ >>> d {‘maggie’: ‘homer’, ‘lisa’: ‘skinner’, ‘bart’: ‘marge’, ‘milhouse’: ‘nelson’} Esistono due modi di ordinare un dizionario: La modalità “classica” e … Continue reading Python: come ordinare un dizionario [dict] per chiave o per valore

Python: uno script per eliminare i file Thumbs.db e le cartelle .DS_Store

Windows XP crea automaticamente un file, chiamato Thumbs.db, in tutte le cartelle che visita per salvarne la visualizzazione (dettagli, anteprima, etc.). La stessa cosa fa OSX, creando addirittura (!) una cartella dal nome .DS_Store, contenente gli stessi attributi. Stanco di avere il mio hard disk pieno di questi file (in Vista la gestione di questi … Continue reading Python: uno script per eliminare i file Thumbs.db e le cartelle .DS_Store

Python: come mandare un e-mail con GMail TLS/SSL

Mi è capitato di dover mandare un e-mail da uno script Python: quale provider utilizzare? Ovviamente GMail! Per questioni di spam, alcuni server SMTP non permettono di inviare e-mail senza essersi prima autenticati; nel caso di GMail, il protocollo per l’invio di mail non è il semplice SMTP in chiaro, bensì SMTP con autenticazione via … Continue reading Python: come mandare un e-mail con GMail TLS/SSL