[Python] Python ed internet
Luigi Fontana
picchiolegno a gmail.com
Gio 13 Nov 2014 12:00:49 CET
Con un po' di "senso artistico" si potrebbe paragonate l'HTML al
compilatore? Nel senso che prende il mio sito programmato in Python e lo
rende fruibile da browser.
Un po' come gnucompiler prende un file in linguaggio C e me lo fa girare in
terminale.
Il giorno gio 13 nov 2014 11:54 Luigi Fontana <picchiolegno a gmail.com> ha
scritto:
> Lorenzo sei stato chiarissimo. Mo mi rendo conto della gaffe
> Il pensavo che l'HTML fosse un qualche linguaggio derivato e semplicemente
> "limitato" ai siti internet. Un po' come il vecchio Inform che altri non
> era che il C epurato di tutto il superlfluo per fare solo e soltanto
> narrazione interattiva.
>
> Invece è più zoppo di quello che credevo ed, in ogni caso, non è in grado
> di gestire solo soletto un sito.
>
> Ho confuso due strumenti diversi. Ok ora posso arrossire.
>
> Il giorno gio 13 nov 2014 11:41 Lorenzo Sutton <lorenzofsutton a gmail.com>
> ha scritto:
>
> 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 a lists.python.it
>> http://lists.python.it/mailman/listinfo/python
>>
>
-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: <http://lists.python.it/pipermail/python/attachments/20141113/63dafc06/attachment.html>
Maggiori informazioni sulla lista
Python