sabato 27 ottobre 2012

Mission Python: Quando una virgola ti complica la vita!

Oggi parliamo della virgola nell'istruzione print e poi facciamo pure uno script (il secondo, che il primo lo abbiamo fatto qui).

La virgola nell'istruzione print permette di unire due variabili o un testo e una variabile etc.

Unire due variabili

saluto = "ciao"
nome = "Luigi"
print saluto, nome

Se invece scrivessimo

saluto = "ciao"
nome = "Luigi"

print saluto nome

(nell'esempio abbiamo volutamente tolto la virgola tra saluto e nome dopo print)

ecco cosa succederebbe:

E' proprio da questo esempio che prende il nome il post!

Unire variabili col testo

saluto = "ciao"
nome = "Luigi"
print saluto, nome, "piacere di conoscerti!"


Come possiamo notare le variabili e il testo sono separati da virgole. Inoltre il testo deve essere racchiuso sempre tra apici singoli o doppi.

Concatenare variabile, testo, variabile...e via dicendo

saluto = "Buongiorno"
nome = "Luigi"
bevanda = "birra"
print saluto, "mi chiamo", nome, "vorrei bere una", bevanda


Passiamo allo script. Ne facciamo uno che ci chiede come ci chiamiamo, quanti anni abbiamo e, giusto per esagerare, ci fa pure la somma di due numeri!!! E sarà interattivo, cioè dovete rispondere a delle domande, infatti stiamo usando le funzioni input() e raw_input(), ricordate? Ne abbiamo parlato qui.

#!/usr/bin/python
# -*- coding: utf-8 -*-

nome=raw_input("come ti chiami? ")
anni=input("quanti anni hai? ")
primo_numero=input("dammi il primo numero: ")
secondo_numero=input("dammi il secondo numero: ")
print "Mi chiamo",nome, "ho", anni, "anni", "la somma dei due numeri è",primo_numero+secondo_numero
  
Un consiglio. Per gli script vi conviene creare una cartella all'interno della directory Documenti. Mio nonno, dopo aver bevuto, dice sempre: "Conserva l'ordine che l'ordine conserva te!"

Ho salvato lo script su un file di testo, che ho nominato test.py, poi l'ho reso eseguibile:

$ chmod +x test.py

e l'ho lanciato

$ ./test.py

Per capire tante cose su come si costruisce uno script, dovete leggere il post semplice semplice del caro Juhan Qui.

Estremamente semplice, vero?

Ora vi lascio un esercizio. Provate a togliere la seconda riga dello script; per intenderci, questa: # -*- coding: utf-8 -*-
e poi lanciatelo di nuovo. Vi darà un errore...Sapete dirci perchè? Eventualmente la risposta nei commenti!

La prossima volta...vabbè, Juhan mi ha detto di non anticiparvi nulla... :))

###Rubrica###
Sapete cos'è Go? Se la risposta è no andate a controllare qui e anche qui. (Juhan, fai un indice altrimenti, con l'aumentare dei tuoi post, mi costringi a scrivere 1000 volte "qui")

L'indice di "Mission Python" lo trovate qui.

Ho creato un nuovo blog...posto pensieri un po'...lo trovate qui.

Vi raccomando, oggi è il LinuxDay!!! Io parteciperò a quello organizzato da HackLab di Catanzaro. 

Alla prossima!!!

3 commenti:

  1. Sì capo!
    Ma tieni conto che i poveri studenti devono fare anche altre cose: mangiare, dormire, tenere in ordine la casa, ...
    E poi oggi è sabato!

    RispondiElimina
  2. Ma ragazzi perchè le schermate di risposta dell'interprete le mettete dentro immagini, e non in testo normale? Così diventano inaccessibili a chi legge la videata con gli ScreenReaders.

    RispondiElimina
  3. tutto ok! solo che io la eseguibilità dello script la attivo da proprietà, perchè sono pigro :D
    e un'altra cosa il terminale (sono sotto Ubuntu preciso) una volta eseguito lo script si chiude
    non riesce nemmeno a leggere l'ultimo print... Ho risolto aggiungendo una riga di input all'ultima istruzuione

    #! /usr/bin/python
    # -*- coding: utf-8 -*-

    nome= raw_input ("come ti chiami?")
    anni = input ("quanti anni hai?")
    numero1 =input ("dammi un numero:")
    numero2 =input ("dammi un altro numero:")
    print "mi chiamo", nome, "ho", anni, "anni", "la somma dei due numeri é" ,numero1+numero2
    input()

    RispondiElimina