giovedì 29 novembre 2012

Gestire l'output con format()

Salve!

Intanto la nostra "Mission Python" va avanti....Sono stato fuori tutta la giornata e al ritorno ho trovato una bella sorpresa...stava lì buona buona in gmail...Le sorprese si condividono, vero? Ecco a voi nuovo post del caro Juhan!! Vi avviso, è un po' tosto...Il post, ovvio...ma anche Juhan! Non per niente nel post si parla del pythonista tosto. :))

martedì 27 novembre 2012

Mission Python: Le liste 2 (senza vendetta)

Effettivamente l'argomento "liste" merita un altro post. Questo. Quello precedente lo trovate qui. Ci tenevo a questo nuovo articolo soprattutto per citare questa frase di cui disconosco l'autore: "Una lista può contenere oggetti di tipo arbitrario e si espande automaticamente quando vi si aggiungono nuovi elementi." Meravigliosa, una pennellata da artista che coglie l'essenza.

Brevi Esercizi #7 Il quadrato di un numero con AWK

Ormai vado a letto prestissimo. Ieri sera, ad esempio, sono andato a letto alle 9. Sono finiti i tempi in cui la sera ci si riuniva con gli amici per scolarsi un paio di bottiglie di vino...Si, anche se dopo cena c'era studiare, si beveva lo stesso...e non vi nascondo che si rendeva pure di più... Vabbè, tutto cambia nella vita... Solo che ora mi capita di svegliarmi verso le tre, o ancora prima...e a quell'ora è difficile trovare qualcosa da fare...Perciò tendo voli pindarici con Bash o Awk e qualche volta anche con Python.

lunedì 26 novembre 2012

Mission Python: I file, leggere e scrivere

Oggi proviamo una cosa nuova: leggere e scrivere file. Intanto, seguendo un'antica e ottima tradizione di Unix/Linux tratteremo solo file di testo, quelli visualizzabili con cat o less. Conoscete tutti cat e less, vero?

Per cominciare, visto che un file da leggere non ce l'abbiamo lo creiamo, così vediamo come si usa write (scrivi.py):

domenica 25 novembre 2012

Un po' di AWK. Dodicesima parte.

Salve!

E il sequel "Un po' di AWK" continua. Un po' a rilento, ma continua. Oggi parliamo del ciclo for e delle istruzioni break e continue. Ma anche di while. Insomma, parliamo di tante cose. Mi rendo conto che forse 'sti post su awk non sono il massimo della linearità, ma mi sforzo di fare del mio meglio. Partiamo sempre dalla nostra tabella(tabella.txt).

giovedì 22 novembre 2012

Mission Python: Moduli - 1

 Salve!
E' arrivato il momento di leggere (e studiare) un altro post del caro Juhan. Detto tra noi, ritengo che sia un articolo di rara bellezza...

Io ho spesso da calcolare l'area e il perimetro di figure, in particolare di cerchi e quadrati; allora (calcfig0.py):

mercoledì 21 novembre 2012

Brevi Esercizi #6 Countdown con Python ed AWK

Ciao!

Tempo fa avevo creato uno script in bash il cui compito era quello di fare il countdown nel terminale. Lo script in questione lo trovate qui.

Stamattina, invece, ho provato a fare la stessa cosa con Python ed AWK. Statene certi, per AWK è una cosa insolita. Diciamo che sono stato io ad usare questo linguaggio in un modo non consono allo scopo per cui è stato creato. Pazienza! I signori A., W. e K. mi perdoneranno...

Brevi esercizi #5 Capovolgere un elenco

Salve!

Il quesito di oggi è di facilissima soluzione. Dato un elenco di nomi in ordine alfabetico, dalla lettera a alla lettera n, lo dobbiamo capovolgere in modo che si inizi dalla lettera n e si finisca con la lettera a. Come al solito, prima darò la soluzione più semplice ed immediata, poi quella apparentemente più complicata usando (ovviamente) awk.

lunedì 19 novembre 2012

Mission Python. Funzioni. Parte quinta

Funzioni, stringhe e un esercizio.
Incominciamo con alcune funzioni di quelle built-in (immediatamente disponibili con il programma).
Naturalmente ci ricordiamo che possiamo trovarle e sapere tutto su di esse all'URL http://docs.python.org/genindex.html , vero?
Il nostro scopo di oggi è di costruire uno script per verificare l'operazione di Kaprekar.
Per chi, come me, non sapesse di cosa stiamo parlando e fosse curioso potrebbe fare un salto qui: Il 6174 e il 495 di Kaprekar

Brevi esercizi #4 Quante volte ricorre una determinata parola in un testo

Salve!

 Eccoci qui ad una nuova puntata di "Brevi esercizi". Il problema di oggi è quello di determinare quante volte ricorre una determinata parola in un testo.

 Partiamo da questa tabella (tabella.txt)

sabato 17 novembre 2012

Mission Python: Le funzioni. Parte quarta

Ebbene sì, ancora roba sulle funzioni. Ma diverso, cominciamo con un quiz.
John Baez (uno pheego assay) ci chiede di calcolare il valore dell'espressione in figura, tenendo presente che

Brevi esercizi #3 Da colonna a riga

Salve!

Oggi vi mostro una serie di alternative per poter trasporre dati da colonna a riga.  Ci sono svariati modi per fare una cosa del genere, graditissima perciò sarebbe la vostra partecipazione.

Ecco la nostra colonna (tabella.txt).

mercoledì 14 novembre 2012

Skype 4.1 su Crunchbang 11

E' uscita una nuova versione di Skype, la 4.1. L'ho voluto provare immediatamente. Attualmente sto usando come distro Crunchbang 11, quella basata su debian testing. Illustro brevemente il procedimento su come installarlo, qualora possa ritornare utile a qualcuno.

Mission Python: Liste e sostituzione di variabili

Iniziamo  dalle liste.

Le liste sono un tipo di variabile. La variabile, dicevamo qualche post fa, è come una scatola nella quale mettiamo dentro un contenuto. La lista invece è quel tipo di scatola che contiene più cose; infatti possiamo assegnargli più di un valore.

martedì 13 novembre 2012

Brevi esercizi #2 Edizione speciale

Ebbene sì, già alla seconda puntata di "Brevi esercizi". Questa però è un'edizione straordinaria. Il caro Robitex ha postato nei commenti del post "Brevi esercizi #1" (che trovate qui) due script, uno in Lua e l'altro in Go, che non  potevano affatto passare inosservati.

Cambiare password

Un piccolo post per dire come si cambia la password dell'utente corrente. Per intenderci, la password che ci viene chiesta nel terminale ogni qualvolta usiamo sudo, o quella che ci viene chiesta per accedere al sistema operativo. Insomma, ci siamo capiti. Può succedere infatti che la password scelta sia troppo corta oppure qualcuno l'abbia scoperta.

lunedì 12 novembre 2012

Brevi esercizi. #1 Touch e tee

Su un sistema linux ci sono tanti modi per fare una determinata operazione. Proprio alla luce di questo assunto, cerco di rompere il ghiaccio: Faccio delle cose con la speranza che voi mi diciate, "ehi, si può fare anche diversamente!" Posterete nei commenti le vostre proposte, vero? :))

Partiamo da cose semplici semplici....Chissà se l'idea di questi post diventi un sequel, proprio come è successo con "Un po' di AWK"... Intanto nel titolo ho messo #1...poi si vedrà!

domenica 11 novembre 2012

Mission Python: Le funzioni. Parte terza

Ancora funzioni?
Sì, ci sono ancora parecchie cose da dire, mi sa che neanche oggi finiamo. Ma in fondo siamo entrati nel cuore della programmazione. E poi vogliamo arrivare alla grafica (finestre, pulsanti, etc)? Ecco lì sarà tutto una funzione! E allora ecco...

Una funzione può essere ricorsiva, cioè chiamare se stessa. Di solito si illustra la ricorsività con la definizione di fattoriale. Proprio come faremo noi, subito-subito.

Un po' di AWK. Undicesima parte

Oggi parliamo del ciclo While.

La sintassi all'interno di uno script è (più o meno) così.
Tutto while deve essere racchiuso tra parentesi graffe.

{
while(condizione)
    azione
}

giovedì 8 novembre 2012

Mission Python: Le funzioni. Seconda parte

Nell'ultimo post abbiamo visto come utilizzare le funzioni, quelle già disponibili perché fatti da qualcun altro. Oggi vedremo come Farne di nostre.
È necessario saperle fare sia perché potremmo avere esisgenze particolari tutte nostre sia perché quando uno script diventa grosso conviene suddividerlo in blocchi tra loro indipendenti.

martedì 6 novembre 2012

Mission Python: Le funzioni. Parte prima

Nella programmazione si chiama funzione (function) una sequenza di istruzioni con un nome che eseguono un'operazione.
OK, vediamola come si faceva ai miei tempi: una funzione è come una scatola nera in cui inserisci dei dati e ottieni dei risultati. Se la funzione l'ha fatta qualcun'altro non ti devi preoccupare di quello che accade al suo interno (per questo si dice che è una scatola nera).

venerdì 2 novembre 2012

Un po' di AWK. Decima parte

Salve!

Eccoci alla decima puntata del sequel "Un po' di AWK". Oggi parleremo del costrutto condizionale if. Mettetevi comodi perchè la puntata di oggi è un po' impegnativa; infatti ho messo tanta verdura a cuocere (non dico carne perchè sono vegetariano).