Dalam artikel ini, anda akan belajar menukar objek tarikh, waktu dan waktu ke rentetan yang setara (dengan bantuan contoh)
The strftime()
Cara mengembalikan rentetan tarikh dan masa yang mewakili menggunakan tarikh, masa atau objek datetime.
Contoh 1: datetime hingga rentetan menggunakan strftime ()
Program di bawah ini menukar datetime
objek yang mengandungi tarikh dan masa semasa ke format rentetan yang berbeza.
from datetime import datetime now = datetime.now() # current date and time year = now.strftime("%Y") print("year:", year) month = now.strftime("%m") print("month:", month) day = now.strftime("%d") print("day:", day) time = now.strftime("%H:%M:%S") print("time:", time) date_time = now.strftime("%m/%d/%Y, %H:%M:%S") print("date and time:",date_time)
Semasa anda menjalankan program, outputnya seperti:
tahun: 2018 bulan: 12 hari: 24 waktu: 04:59:31 tarikh dan masa: 12/24/2018, 04:59:31
Di sini, tahun, hari, waktu dan tarikh_waktu adalah rentetan, sedangkan sekarang adalah datetime
objek.
Bagaimana strftime () berfungsi?
Dalam program di atas, %Y
, %m
, %d
dan lain-lain kod format. The strftime()
Cara mengambil masa satu atau lebih kod format sebagai hujah dan mengembalikan rentetan diformat berdasarkan ia.
- Kami mengimport
datetime
kelas daridatetime
modul. Ini kerana objekdatetime
kelas boleh mengaksesstrftime()
kaedah. - The
datetime
objek yang mengandungi tarikh dan masa semasa disimpan dalam sekarang berubah-ubah. - The
strftime()
kaedah yang boleh digunakan untuk membuat tali diformat. - Rentetan yang anda lalui untuk
strftime()
kaedah ini mungkin mengandungi lebih daripada satu kod format.
Contoh 2: Membuat rentetan dari cap waktu
from datetime import datetime timestamp = 1528797322 date_time = datetime.fromtimestamp(timestamp) print("Date time object:", 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("Output 4:", d) d = date_time.strftime("%I%p") print("Output 5:", d)
Semasa anda menjalankan program, outputnya adalah:
Objek tarikh masa: 2018-06-12 09:55:22 Keluaran 2: 06/12/2018, 09:55:22 Keluaran 3: 12 Jun, 2018 Keluaran 4: 12 Jun, 2018 Keluaran 5: 09AM
Format Senarai Kod
Jadual di bawah menunjukkan semua kod yang boleh anda gunakan untuk strftime()
kaedah ini.
Arahan | Makna | Contohnya |
%a | Singkatan nama hari minggu. | Matahari, Isnin,… |
%A | Nama hari minggu penuh. | Ahad Isnin,… |
%w | Hari minggu sebagai nombor perpuluhan. | 0, 1,…, 6 |
%d | Hari bulan sebagai perpuluhan sifar. | 01, 02,…, 31 |
%-d | Hari dalam bulan sebagai nombor perpuluhan. | 1, 2,…, 30 |
%b | Nama singkatan bulan. | Jan, Feb,…, Dis |
%B | Nama bulan penuh. | Januari Febuari,… |
%m | Bulan sebagai nombor perpuluhan berlapis sifar. | 01, 02,…, 12 |
%-m | Bulan sebagai nombor perpuluhan. | 1, 2,…, 12 |
%y | Tahun tanpa abad sebagai nombor perpuluhan berlapis sifar. | 00, 01,…, 99 |
%-y | Tahun tanpa abad sebagai nombor perpuluhan. | 0, 1,…, 99 |
%Y | Tahun dengan abad sebagai nombor perpuluhan. | 2013, 2019 dll. |
%H | Jam (jam 24 jam) sebagai nombor perpuluhan empuk sifar. | 00, 01,…, 23 |
%-H | Jam (jam 24 jam) sebagai nombor perpuluhan. | 0, 1,…, 23 |
%I | Jam (jam 12 jam) sebagai nombor perpuluhan berlapis sifar. | 01, 02,…, 12 |
%-I | Jam (jam 12 jam) sebagai nombor perpuluhan. | 1, 2,… 12 |
%p | AM atau PM tempatan. | PAGI PETANG |
%M | Minit sebagai nombor perpuluhan berlapis sifar. | 00, 01,…, 59 |
%-M | Minit sebagai nombor perpuluhan. | 0, 1,…, 59 |
%S | Kedua sebagai nombor perpuluhan berlapis sifar. | 00, 01,…, 59 |
%-S | Kedua sebagai nombor perpuluhan. | 0, 1,…, 59 |
%f | Mikrod sebagai nombor perpuluhan, empuk sifar di sebelah kiri. | 000000 - 999999 |
%z | UTC mengimbangi dalam bentuk + HHMM atau -HHMM. | |
%Z | Nama zon waktu. | |
%j | Hari dalam setahun sebagai nombor perpuluhan berlapis sifar. | 001, 002,…, 366 |
%-j | Hari dalam setahun sebagai nombor perpuluhan. | 1, 2,…, 366 |
%U | Bilangan minggu dalam setahun (Ahad sebagai hari pertama dalam seminggu). Semua hari dalam tahun baru sebelum hari Ahad pertama dianggap sebagai minggu ke-0. | 00, 01,…, 53 |
%W | Bilangan minggu dalam setahun (Isnin sebagai hari pertama dalam seminggu). Semua hari dalam tahun baru sebelum Isnin pertama dianggap dalam minggu 0. | 00, 01,…, 53 |
%c | Perwakilan tarikh dan masa tempatan yang sesuai. | Isnin 30 Sep 07:06:05 2013 |
%x | Perwakilan tarikh yang sesuai di lokasi. | 09/30/13 |
%X | Perwakilan masa yang sesuai di tempat. | 07:06:05 |
%% | Watak '%' harfiah. | % |
Contoh 3: Tarikh dan masa tempatan yang sesuai
from datetime import datetime timestamp = 1528797322 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)
Semasa anda menjalankan program, outputnya adalah:
Keluaran 1: Sel 12 Jun 09:55:22 2018 Keluaran 2: 06/12/18 Keluaran 3: 09:55:22
Format kod %c
, %x
dan %X
digunakan untuk perwakilan tarikh dan waktu tempatan yang sesuai.
Kami juga mengesyorkan anda untuk memeriksa Python strptime (). The strptime()
kaedah mencipta datetime
objek dari rentetan.