Vai al contenuto
Leo

Libreria

Date e tempo

Date, orari, durate, festività, età, cronometri e attese.

  • 41 voci
  • 28 voci con esempi eseguiti

Funzioni 25

ora()#

L'ora attuale come testo "HH:MM:SS".

Esempioeseguito con Leo
stampa("Sono le {ora()}")
Uscita
Sono le 12:20:09

oggi()#

La data di oggi come testo "GG/MM/AAAA".

Esempioeseguito con Leo
stampa("Oggi è il {oggi()}")
Uscita
Oggi è il 05/10/2026

attendi(secondi)#

Aspetta il numero di secondi indicato (anche decimale) prima di continuare.

In un programma con finestre l'interfaccia continua a rispondere mentre aspetti.

Esempioeseguito con Leo
attendi(0.5)

data(anno, mese, giorno, ore = 0, minuti = 0, secondi = 0)#

Crea una data.

Senza argomenti è la data di oggi (a mezzanotte).

Esempioeseguito con Leo
data(2026, 9, 25)data(2026, 12, 25, ore = 20)data("25/09/2026")data("25/09/2026 14:30")

adesso()#

La data e l'ora di questo momento.

Esempioeseguito con Leo
stampa(adesso().formato("hh:mm"))
Uscita
12:20

giorni_tra(prima, dopo)#

Quanti giorni passano da una data all'altra (negativo se dopo viene prima).

Esempioeseguito con Leo
stampa(giorni_tra(data(2026, 9, 25), data(2026, 12, 25)))giorni_tra(oggi(), "25/12/2026")
Uscita
91

nome_giorno(numero)#

Il nome del giorno della settimana, da 1 (lunedì) a 7 (domenica).

Si può passare anche una data.

Esempioeseguito con Leo
stampa(nome_giorno(5))
Uscita
venerdì

nome_mese(numero)#

Il nome del mese, da 1 (gennaio) a 12 (dicembre).

Si può passare anche una data.

Esempioeseguito con Leo
stampa(nome_mese(9))
Uscita
settembre

scegli_a_caso(lista, quanti = nulla)#

Un elemento scelto a caso (o quanti elementi diversi).

Esempioeseguito con Leo
stampa(scegli_a_caso(["sasso", "carta", "forbici"]))scegli_a_caso(1..90, quanti = 6)
Uscita
forbici

mescola(lista)#

Una NUOVA lista con gli stessi elementi in ordine casuale (la lista data non cambia).

Esempioeseguito con Leo
variabile carte = ["asso", "due", "tre", "re"]   # valore di provavariabile mazzo = mescola(carte)

cronometro()#

Fa partire un cronometro. Poi c.secondi dice quanto tempo è passato.

Esempioeseguito con Leo
variabile c = cronometro()
Altri esempicontrollato con Leo
stampa("Ci hai messo {c.secondi} secondi")ferma()riprendi()azzera()giro(decimali = 3)

misura_tempo(funzione)#

Esegue la funzione (senza argomenti) e dice quanti secondi ci ha messo.

Esempioeseguito con Leo
stampa(misura_tempo(funzione () restituisci somma(1..1000000) fine))
Uscita
0.001278

formatta_data(d, stile = "lungo")#

La data scritta in italiano nello stile scelto.

Stili: "lungo" ("lunedì 5 ottobre 2026"), "completo" (con l'ora: "lunedì 5 ottobre 2026, ore 14:30"), "medio" ("5 ott 2026"), "breve" ("05/10/26"), "numerico" ("05/10/2026"), "iso" ("2026-10-05"), "mese_anno" ("ottobre 2026"), "giorno_mese" ("5 ottobre").

Esempioeseguito con Leo
stampa(formatta_data(data(2026, 10, 5)))
Uscita
lunedì 5 ottobre 2026

tempo_relativo(d, riferimento = nulla)#

Quanto tempo è passato (o manca) in parole, rispetto ad adesso.

Esempioeseguito con Leo
tempo_relativo(data(2026, 9, 24), riferimento = data(2026, 9, 27))

pasqua(anno)#

La data della domenica di Pasqua in quell'anno (calcolata, calendario gregoriano).

Esempioeseguito con Leo
stampa(pasqua(2026))stampa(pasqua(2026).aggiungi_giorni(1))
Uscita
05/04/2026
06/04/2026

festivita_italiane(anno)#

Le festività nazionali italiane dell'anno, come lista di dizionari {"data", "nome"}.

Pasqua e Pasquetta sono calcolate; dal 2026 c'è anche San Francesco (4 ottobre).

Esempioeseguito con Leo
per ogni f in festivita_italiane(2026) fai stampa(f["data"], f["nome"]) fine
Uscita
01/01/2026 Capodanno
06/01/2026 Epifania
05/04/2026 Pasqua
06/04/2026 Lunedì dell'Angelo (Pasquetta)
25/04/2026 Festa della Liberazione
01/05/2026 Festa del Lavoro
02/06/2026 Festa della Repubblica
15/08/2026 Ferragosto (Assunzione)
04/10/2026 San Francesco d'Assisi, patrono d'Italia
01/11/2026 Ognissanti
08/12/2026 Immacolata Concezione
25/12/2026 Natale
26/12/2026 Santo Stefano

nome_festivita(d)#

Il nome della festività nazionale di quel giorno, o nulla se è un giorno normale.

Esempioeseguito con Leo
stampa(nome_festivita("25/04/2026"))
Uscita
Festa della Liberazione

e_festivo(d, extra = nulla)#

vero se il giorno è domenica o una festività nazionale italiana.

extra aggiunge feste locali ripetute ogni anno, per

Esempioeseguito con Leo
stampa(e_festivo("06/04/2026"))stampa(e_festivo("07/04/2026"))
Uscita
vero
falso
Altri esempicontrollato con Leo
extra = ["07/12"]

e_giorno_lavorativo(d, sabato_lavorativo = falso, extra = nulla)#

vero se non è sabato, domenica o festa.

Esempioeseguito con Leo
stampa(e_giorno_lavorativo(data(2026, 12, 24)))stampa(e_giorno_lavorativo(data(2026, 12, 25)))
Uscita
vero
falso

giorni_lavorativi(da, a, sabato_lavorativo = falso, extra = nulla)#

Quanti giorni lavorativi ci sono da una data all'altra (comprese).

Salta sabati (se non lavorativi), domeniche e festività nazionali italiane (e quelle in extra). Se a viene prima di da il risultato è negativo.

Esempioeseguito con Leo
stampa(giorni_lavorativi("01/12/2026", "31/12/2026"))
Uscita
21

aggiungi_giorni_lavorativi(d, giorni, sabato_lavorativo = falso, extra = nulla)#

La data dopo tanti giorni lavorativi.

Con un numero negativo va indietro. Serve per scadenze come "entro 10 giorni lavorativi". Stefano e la domenica).

Esempioeseguito con Leo
stampa(aggiungi_giorni_lavorativi("24/12/2026", 1))
Uscita
28/12/2026

calcola_eta(nascita, alla_data = nulla, completa = falso)#

Gli anni compiuti da chi è nato in quella data (a oggi).

Con completa = vero restituisce un dizionario con "anni", "mesi" e "giorni". Chi è nato il 29 febbraio compie gli anni il 1° marzo negli anni non bisestili.

Esempioeseguito con Leo
calcola_eta("15/03/2000", alla_data = "14/03/2026")calcola_eta("15/03/2000", "20/05/2026", completa = vero)

durata_in_parole(secondi, con_secondi = vero)#

Una durata scritta per esteso in italiano.

Esempioeseguito con Leo
stampa(durata_in_parole(3725))stampa(durata_in_parole(90061))stampa(durata_in_parole(0))
Uscita
1 ora, 2 minuti e 5 secondi
1 giorno, 1 ora, 1 minuto e 1 secondo
0 secondi

formatta_durata(secondi, decimi = falso)#

Una durata come "hh:mm:ss" (le ore possono superare 24).

Esempioeseguito con Leo
stampa(formatta_durata(3725))formatta_durata(65.4, decimi = vero)
Uscita
01:02:05

conto_alla_rovescia(durata)#

Parte un conto alla rovescia di tanti secondi, oppure fino a una data.

Non blocca il programma: si legge quando serve. Proprietà: secondi_rimasti (con 3 decimali), secondi_interi, scaduto, testo ("00:04:59"), in_parole. Metodi: ferma(), riprendi(), azzera(), aggiungi(secondi).

Esempioeseguito con Leo
variabile c = conto_alla_rovescia(300)se c.scaduto allora stampa("Tempo!") fineconto_alla_rovescia(data(2026, 12, 25)).in_parole

Oggetto «data»

Valore Leo di tipo data (immutabile).

ProprietàSignificato
anno
fine_settimana
giorno
giorno_settimana
mese
minuti
nome_giorno
nome_mese
ore
secondi

.aggiungi(giorni = 0, ore = 0, minuti = 0, secondi = 0)#

Una nuova data spostata in avanti.

Con numeri negativi va indietro.

Esempioeseguito con Leo
adesso().aggiungi(ore = 2, minuti = 30)

.aggiungi_giorni(giorni)#

Una nuova data spostata di tanti giorni (negativi = indietro).

Esempioeseguito con Leo
stampa(data(2026, 12, 31).aggiungi_giorni(1))
Uscita
01/01/2027

.dopo_di(altra)#

vero se questa data viene dopo l'altra.

.formato(modello)#

La data scritta secondo un modello.

Segnaposti: GG giorno, MM mese, AAAA anno (AA le ultime due cifre), hh ore, mm minuti, ss secondi, GIORNO nome del giorno, MESE nome del mese.

Esempioeseguito con Leo
stampa(data(2026, 9, 25).formato("GIORNO GG MESE AAAA"))
Uscita
venerdì 25 settembre 2026

.in_lettere()#

La data scritta per esteso, per esempio "venerdì 25 settembre 2026".

.prima_di(altra)#

vero se questa data viene prima dell'altra.

.uguale_a(altra)#

vero se le due date (con l'orario) coincidono.

Oggetto «cronometro»

Valore Leo di tipo cronometro: misura il tempo passato.

ProprietàSignificato
in_corsa
millisecondi
secondi
tempi_giro

.azzera()#

Riporta il cronometro a 0 e lo fa ripartire.

.ferma()#

Mette in pausa il cronometro (il tempo smette di contare).

.giro(decimali = 3)#

I secondi passati, con quanti decimali vuoi.

.riprendi()#

Fa ripartire un cronometro fermato con ferma().

.segna_giro()#

Registra un giro e restituisce quanto è durato (in secondi, 3 decimali).

I tempi di tutti i giri si leggono con c.tempi_giro.

Esempiocontrollato con Leo
stampa("Giro:", c.segna_giro())

Oggetto «conto_alla_rovescia»

Valore Leo di tipo conto_alla_rovescia: quanto manca a una scadenza.

ProprietàSignificato
in_corsa
in_parole
scaduto
secondi_interi
secondi_rimasti
testo

.aggiungi(secondi)#

Aggiunge (o toglie, se negativi) secondi al tempo rimasto.

.azzera()#

Ricomincia da capo con la durata iniziale.

.ferma()#

Mette in pausa il conto (il tempo rimasto non scende più).

.riprendi()#

Fa ripartire un conto messo in pausa con ferma().