English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Tutorial di base Python

Controllo di flusso Python

Funzione in Python

Tipi di dati in Python

Operazioni di file Python

Oggetti e classi Python

Data e ora Python

Conoscenze avanzate di Python

Manuale di Python

strftime() em Python

In questo articolo, imparerai come convertire gli oggetti date, time e datetime in stringhe equivalenti (attraverso esempi)

Il metodo strftime() utilizzadate,timeodatetimeL'oggetto restituisce una stringa che rappresenta la data e l'ora.

Esempio 1: Convertire data e ora in stringa utilizzando strftime()

Il seguente programma converte l'oggetto datetime che contiene la data e l'ora corrente in stringhe di diversi formati.

from datetime import datetime
now = datetime.now() # Data e ora corrente
year = now.strftime("%Y")
print("Anno:", year)
month = now.strftime("%m")
print("Mese:", month)
day = now.strftime("%d")
print("Giorno:", day)
time = now.strftime("%H:%M:%S")
print("Ora:", time)
date_time = now.strftime("%m/%d/%Y, %H:%M:%S")
print("Data e ora:", date_time)

Quando esegui il programma, l'output sarà come segue:

Anno: 2020
Mese: 04
Giorno: 13
Ora: 17:35:22
Data e ora: 04/13/2020, 17:35:22

In questo caso,year,day,timeedate_timeÈ una stringa, mentrenowÈ un oggetto datetime.

Come funziona strftime()?

Nell'esempio sopra, %Y, %m, %d sono codici di formato. Il metodo strftime() accetta uno o più codici di formato come parametri e restituisce una stringa formattata in base a questi parametri.

  1. Abbiamo importato la classe datetime dal modulo datetime. Questo è perché gli oggetti della classe datetime possono accedere al metodo strftime().

     

  2. L'oggetto datetime che contiene la data e l'ora corrente è memorizzato innownelle variabili.

     

  3. Il metodo strftime() può essere utilizzato per creare stringhe formattate.

     

  4. La stringa che passi al metodo strftime() può contenere più codici di formato.

     

Esempio 2: Creare una stringa da un timestamp

from datetime import datetime
timestamp = 1578797322
date_time = datetime.fromtimestamp(timestamp)
print("Oggetto data e ora:", date_time)
d = date_time.strftime("%m/%d/%Y, %H:%M:%S")
print("Output 2:", d)	
d = date_time.strftime("%d %b, %Y")
print("Output 3:", d)
d = date_time.strftime("%d %B, %Y")
print("输出 4:", d)
d = date_time.strftime("%I%p")
print("输出 5:", d)

Quando si esegue il programma, l'output è:

日期时间对象: 2020-01-12 10:48:42
输出 2: 01/12/2020, 10:48:42
输出 3: 12 Jan, 2020
输出 4: 12 January, 2020
输出 5: 10AM

格式代码清单

下表显示了您可以传递给该strftime()方法的所有代码。

指令含义例如
%a工作日名称的缩写。Sun, Mon, ...
%A工作日全名。Sunday, Monday, ..
%w工作日为十进制数字。0,1,...,6
%d月份中的一天,以零填充的十进制数表示。01,02,...,31
%-d以十进制数表示的月份中的一天。1,2,...,30
%b月份的缩写。Jan, Feb, ..., Dec
%B完整的月份名称。January, February, ...
%m月份为零填充的十进制数字。01、02,...,12
%-m以十进制数表示的月份。1,2,...,12
%y无世纪的年份,为零填充的十进制数字。00、01,...,99
%-y没有世纪的年份作为十进制数字。0,1,...,99
%Y以世纪作为十进制数字的年份。2013、2019等
%H小时(24小时制),为补零的十进制数字。00、01,...,23
%-H小时(24小时制)为十进制数字。0,1,...,23
%I小时(12小时制),为零填充的十进制数字。01、02,...,12
%-I小时(12小时制)为十进制数字。1 2 2
%p语言环境的上午或下午。AM,PM
%M分钟,为零填充的十进制数字。00、01,...,59
%-M以十进制数字表示。0,1,...,59
%S第二个为零填充的十进制数。00、01,...,59
%-S第二个十进制数字。0,1,...,59
%f微秒,十进制数,在左侧补零。000000-999999
%zFuso orario, formato + HHMM o - HHMM. 
%ZNome della fascia oraria. 
%jGiorno dell'anno, rappresentato come numero decimale con zeri iniziali.001, 002, ..., 366
%-jGiorno dell'anno, rappresentato come numero decimale.1, 2, ..., 366
%ULa settimana dell'anno (domenica è il primo giorno della settimana). Tutti i giorni prima del primo domenica dell'anno nuovo sono considerati nella settimana 0.00, 01, ..., 53
%WLa settimana dell'anno (lunedì è il primo giorno della settimana). Tutti i giorni prima del primo lunedì dell'anno nuovo sono considerati nella settimana 0.00, 01, ..., 53
%cRappresentazione appropriata della data e dell'ora per l'ambiente linguistico.Mon Sep 30 07:06:05 2019
%xForma appropriata di rappresentazione della data per l'ambiente linguistico.13/9/30
%XForma appropriata di rappresentazione della data e dell'ora per l'ambiente linguistico.07:06:05
%%Il carattere di testo "%".%

Esempio 3: Data e ora appropriate per l'ambiente linguistico

from datetime import datetime
timestamp = 1578797322
date_time = datetime.fromtimestamp(timestamp)
d = date_time.strftime("%c")
print("Output 1:", d)	
d = date_time.strftime("%x")
print("Output 2:", d)
d = date_time.strftime("%X")
print("Output 3:", d)

Quando si esegue il programma, l'output è:

Output: 1: Sun Jan 12 10:48:42 2020
Output: 2: 01/12/20
Output: 3: 10:48:42

I codici di formato %c, %x e %X sono usati per rappresentare la data e l'ora appropriata per l'ambiente linguistico.

Suggeriamo anche di controllarestrptime() em PythonIl metodo strptime() crea un oggetto datetime da una stringa.