tất cả các đối tượng date, datetime và time đều hỗ trợ phương thức strftime[format], để tạo một chuỗi biểu thị thời gian dưới sự kiểm soát của một chuỗi định dạng rõ ràng
Ngược lại, ngày giờ. Phương thức lớp strptime[] tạo một đối tượng datetime từ một chuỗi đại diện cho ngày và giờ và một chuỗi định dạng tương ứng
Bảng bên dưới cung cấp so sánh cấp cao của strftime[] so với strptime[]
Chuyển đổi giữa đối tượng datetime và chuỗi là một chủ đề mà chúng ta thường phải xử lý trong quá trình xử lý dữ liệu. Trong blog này, tôi sẽ nói về cách chuyển đổi đối tượng ngày giờ thành chuỗi và ngược lại, với định dạng ngày tháng sau
YYYY-MM-DD
YY-MM-DD
MM-DD-YYYY
MM-DD-YY
DD-MM-YYYY
DD-MM-YY
YYYY/MM/DD
YY/MM/DD
strptime[]
0strptime[]
1strptime[]
2strptime[]
3- Ngày có thể hiểu được của con người
Vì vậy, hãy bắt đầu……
Chuyển đổi từ đối tượng datetime thành chuỗiYYYY-MM-DD
Bạn có thể chuyển đổi đối tượng datetime và đối tượng pandas strptime[]
4 thành chuỗi bằng str hoặc phương thức strftime
strptime[]
5 có nghĩa là năm có bốn chữ số, strptime[]
6 thể hiện tháng có hai chữ số, strptime[]
7 mô tả ngày có hai chữ số, strptime[]
8 là viết tắt của strptime[]
9
YY-MM-DD
YYYY-MM-DD
0 có nghĩa là năm có hai chữ số
MM-DD-YYYY
MM-DD-YY
DD-MM-YYYY
DD-MM-YY
YYYY/MM/DD
YY/MM/DD
MM/DD/YYYY
MM/DD/YY
YYYY-MM-DD
1 là viết tắt của YYYY-MM-DD
2
ngày/tháng/năm
ngày/tháng/năm
Chuyển đổi từ chuỗi thành ngày giờ
YYYY-MM-DD
ngày giờ. ngày giờ. strptime là một cách hay để phân tích một ngày có định dạng đã biết. Tuy nhiên, có thể hơi khó chịu khi phải viết thông số định dạng mỗi lần, đặc biệt đối với các định dạng ngày phổ biến. Trong trường hợp này, bạn có thể sử dụng phương thức YYYY-MM-DD
3 trong gói dateutil của bên thứ ba
YY-MM-DD
MM-DD-YYYY
MM-DD-YY
DD-MM-YYYY
DD-MM-YY
YYYY/MM/DD
YY/MM/DD
MM/DD/YYYY
MM/DD/YY
ngày/tháng/năm
ngày/tháng/năm
Ngày có thể hiểu được của con người
Chuyển đổi giữa dạng chuỗi này sang dạng chuỗi khác
Hãy lấy ví dụ
DD/MM/YYYY đến YYYY-MM-DD
Hy vọng blog này sẽ hữu ích và thoải mái đặt câu hỏi và nếu bạn thích nó, vui lòng cho tôi biết trong phần bình luận bên dưới. Vui mừng. ] đọc
Chúng tôi cũng khuyên bạn nên kiểm tra Python strptime[]. Phương thứcOutput 1: Tue Jun 12 09:55:22 2018 Output 2: 06/12/18 Output 3: 09:55:226 tạo một đối tượng
datetime
từ một chuỗi từ datetime nhập datetime
date_time_str = '18/09/19 01. 55. 19'
date_time_obj = ngày giờ. strptime[date_time_str, '%d/%m/%y %H. %M. %S']
print ["Kiểu ngày là bây giờ", gõ [date_time_obj]]
print["Ngày là", date_time_obj]
Ở các khu vực khác nhau trên thế giới, các loại định dạng ngày khác nhau được sử dụng và vì lý do đó, các ngôn ngữ lập trình thường cung cấp một số định dạng ngày để các nhà phát triển xử lý. Trong Python, nó được xử lý bằng cách sử dụng quyền tự do có tên DateTime. Nó bao gồm các lớp và phương thức có thể được sử dụng để làm việc với các giá trị dữ liệu và thời gian.
Bắt buộc thư viện
import datetime
ngày giờ. phương pháp thời gian
Các giá trị thời gian có thể được biểu diễn bằng cách sử dụng lớp thời gian. Các thuộc tính cho lớp thời gian bao gồm giờ, phút, giây và micro giây
Cú pháp của ngày giờ. thời gian
time[hour, minute, second, microsecond]
ví dụ 1
Python3
time[hour, minute, second, microsecond]8
time[hour, minute, second, microsecond]9
02:25:50.0000130
02:25:50.0000131
02:25:50.0000132_______5_______3_______5_______4_______5_______5_______5_______4
02:25:50.0000137
02:25:50.0000134
02:25:50.0000139
date[yyyy, mm, dd]0
date[yyyy, mm, dd]1
date[yyyy, mm, dd]2
đầu ra
02:25:50.000013
ví dụ 2.
Có các phạm vi cho các thuộc tính thời gian tôi. e trong vài giây, chúng tôi có phạm vi từ 0 đến 59 và đối với nano giây, phạm vi nằm trong khoảng từ 0 đến 999999. Nếu phạm vi vượt quá, trình biên dịch sẽ hiển thị ValueError. Thể hiện của lớp thời gian bao gồm ba thuộc tính thể hiện là giờ, phút, giây và micro giây. Chúng được sử dụng để có được thông tin cụ thể về thời gian.
Python3
time[hour, minute, second, microsecond]8
time[hour, minute, second, microsecond]9
02:25:50.0000130
02:25:50.0000131
02:25:50.0000132
date[yyyy, mm, dd]8_______5_______4
02:25:50.0000137
02:25:50.0000134
Date date is 12 day of 5 of the year 20182
02:25:50.0000134
Date date is 12 day of 5 of the year 20184
date[yyyy, mm, dd]0
date[yyyy, mm, dd]1
Date date is 12 day of 5 of the year 20187
Date date is 12 day of 5 of the year 20188
02:25:50.0000134
The date today is 2020-01-30 The date info. is Thu Jan 30 00:00:00 20200
The date today is 2020-01-30 The date info. is Thu Jan 30 00:00:00 20201
The date today is 2020-01-30 The date info. is Thu Jan 30 00:00:00 20202
02:25:50.0000134
The date today is 2020-01-30 The date info. is Thu Jan 30 00:00:00 20200
The date today is 2020-01-30 The date info. is Thu Jan 30 00:00:00 20205
The date today is 2020-01-30 The date info. is Thu Jan 30 00:00:00 20206
02:25:50.0000134
The date today is 2020-01-30 The date info. is Thu Jan 30 00:00:00 20200
The date today is 2020-01-30 The date info. is Thu Jan 30 00:00:00 20209
2019-05-05 00:00:000
02:25:50.0000134
The date today is 2020-01-30 The date info. is Thu Jan 30 00:00:00 20200
2019-05-05 00:00:003
2019-05-05 00:00:004
date[yyyy, mm, dd]0
đầu ra
Thời gian tm là 1 giờ 50 phút 20 giây và 133257 micro giây
ngày giờ. phương pháp ngày
Các giá trị cho ngày dương lịch có thể được biểu diễn thông qua lớp ngày. Ví dụ ngày bao gồm các thuộc tính cho năm, tháng và ngày.
Cú pháp của ngày giờ. ngày
date[yyyy, mm, dd]
ví dụ 1
Python3
time[hour, minute, second, microsecond]8
time[hour, minute, second, microsecond]9
2019-05-05 00:00:008
02:25:50.0000131
May 12 2018 02:25:500
May 12 2018 02:25:501_______5_______4
May 12 2018 02:25:503
02:25:50.0000134
May 12 2018 02:25:505
date[yyyy, mm, dd]0
date[yyyy, mm, dd]1
Date date is 12 day of 5 of the year 20187
May 12 2018 02:25:509
02:25:50 May 12 20180
The date today is 2020-01-30 The date info. is Thu Jan 30 00:00:00 20200
02:25:50 May 12 20182
02:25:50 May 12 20183
The date today is 2020-01-30 The date info. is Thu Jan 30 00:00:00 20200
02:25:50 May 12 20185
02:25:50 May 12 20186
đầu ra
Date date is 12 day of 5 of the year 2018
ví dụ 2.
Để lấy tên ngày hôm nay, một phương thức có tên là today[] được sử dụng và để lấy tất cả thông tin trong một đối tượng [thông tin của ngày hôm nay], phương thức ctime[] được sử dụng.
Python3
time[hour, minute, second, microsecond]8
time[hour, minute, second, microsecond]9
02:25:50 May 12 20189
02:25:50.0000131
Sat1
Sat2_______5_______1
Sat4
date[yyyy, mm, dd]1
Date date is 12 day of 5 of the year 20187
Sat7
Sat8
date[yyyy, mm, dd]1
Date date is 12 day of 5 of the year 20187
time[hour, minute, second, microsecond]01
time[hour, minute, second, microsecond]02
đầu ra
The date today is 2020-01-30 The date info. is Thu Jan 30 00:00:00 2020
Chuyển đổi chuỗi thành ngày bằng cách sử dụng DateTime
Cần nhiều lần chuyển đổi từ chuỗi thành ngày trong khi làm việc với các tập dữ liệu đã nhập từ CSV hoặc khi chúng tôi lấy đầu vào từ biểu mẫu trang web. Để làm điều này, Python cung cấp một phương thức gọi là strptime[].
cú pháp. ngày giờ. strptime[chuỗi, định dạng]
Thông số
- string – Chuỗi đầu vào
- định dạng - Đây là loại chuỗi. Tôi. e. các lệnh có thể được nhúng trong chuỗi định dạng
Ví dụ.
Python3
time[hour, minute, second, microsecond]03
time[hour, minute, second, microsecond]9
time[hour, minute, second, microsecond]8
time[hour, minute, second, microsecond]9
date[yyyy, mm, dd]1
time[hour, minute, second, microsecond]08
time[hour, minute, second, microsecond]09
02:25:50.0000134
time[hour, minute, second, microsecond]11
time[hour, minute, second, microsecond]12
time[hour, minute, second, microsecond]13
đầu ra
2019-05-05 00:00:00
Chuyển đổi ngày thành chuỗi bằng DateTime
Ngày và giờ khác với chuỗi và do đó, nhiều lần điều quan trọng là phải chuyển đổi DateTime thành chuỗi. Đối với điều này, chúng ta sử dụng phương thức strftime[].
Cú pháp của ngày giờ. strftime
cú pháp. ngày giờ. strftime[định dạng, t]
Thông số
- định dạng - Đây là loại chuỗi. Tôi. e. các lệnh có thể được nhúng trong chuỗi định dạng
- t – thời gian được định dạng
ví dụ 1
Python3
time[hour, minute, second, microsecond]8
time[hour, minute, second, microsecond]9
time[hour, minute, second, microsecond]16_______5_______1
time[hour, minute, second, microsecond]18
May 12 2018 02:25:501_______5_______4
May 12 2018 02:25:503
02:25:50.0000134
May 12 2018 02:25:505
02:25:50.0000134
02:25:50.0000133
02:25:50.0000134
02:25:50.0000135
02:25:50.0000134
02:25:50.0000137
02:25:50.0000134
02:25:50.0000139_______15_______0