Ciao Luigi,

On 13/11/2014 10:44, Luigi Fontana wrote:
Ma se vi chiedessi un confronto tra python e questo HTML 5 di cui si parla tanto riuscite a non esser di parte?
Se posso...

E' praticamente impossibile fare un confronto. Python è un linguaggio di programmazione.
HTML non è un linguaggio di programmazione, è un linguaggio di markup.

Strettamente parlando in quanto tale l'HTML dovrebbe servire solo a indicare la "formattazione" dell'informazione. Orginalmente si trattava soprattutto di testo, poi immagini e oggi anche audio e video. In realtà la "formattazione" suggerisce (e mischia) anche alcuni aspetti logici (ad esempio sezioni <div> e paragragi <p>). HTML5 non è altro che l'HTML di "nuova generazione" che permette di inserire in maniera uniforme direttamente audio, video e altri elementi moderni senza usare cose esotiche e non standard tipo il famigerato Flash.

Python, come tutti sappiamo, è un linguaggio di programmazione a tutti gli effetti.

Ora, supponiamo tu volessi costruire una pagina web che mostra dinamicamente questo output:

Buon giornno [nome_utente]. Oggi è il [data] e sono le ore [ora].

Esempio:

Buon giorno Mario. Oggi è lunedì 3 novembre 2014 e sono le ore 12:30.

HTML non ha modo di sapere che l'utente si chiama "Mario" né quale sia la data e l'ora... Per avere questa 'dinamicità' e logica devi avere qualcosa in grado di generare quell'output algoritmicamente, tipo.... un linguaggio di programmazione (tipo... Python)

Ma, negli anni si sono accumulate tante soluzioni per ovviare a questa limitazione dell'HTML. Le più popolari sono:

1. L'uso di un linguaggio di programmazione mischiato dentro HTML che il browser (es Firefox) è n grado di interpretare, localmente sulla macchina dell'utente: cioè JavaScript 2. La generazione delle pagine sul server a cui l'utente si collega a cura di un linguaggio di programmazione che "gira" sul suddetto server

Tagliando un po' (tanto) con l'accetta, e come già spiegato da altri, "fare siti internet in Python" vuol dire la 2.
Cioè con Python costruisci le pagine web algoritmicamente.
Che vordì?

Prescindendo da server, framework, ecc... Immagina questo codice:

import datetime

def get_user():
    """ Siamo tutti un po' mario dentro..."""
    return 'Mario'

user_name = get_user() # Immaginiamo che ritorni _veramente_ il nome utente
d = datetime.datetime.now()
date_string = datetime.date.strftime(d.date(), "%A %d %B %Y")
time_string = datetime.time.strftime(d.time(), "%H:%M")
output_html = (
    ("""<html>
    <head>
        <title>La mia fantastica pagina web</title>
    </head>
    <body>
        <div>
            <p>Ciao %s. Oggi è il %s e sono le ore %s.</p>
        </div>
    </body>
</html>""") %
    (user_name, date_string, time_string)
    )

print output_html

Ecco qua... abbiamo generato la nostra pagina web in Python (sort of) :-)

Lorenzo.
_______________________________________________
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python

Rispondere a