Hướng dẫn python date format - định dạng ngày trăn
Tổng quanGần đây mình có làm việc nhiều với kiểu dữ liệu Datetime trong Python. Vấn đề mình gặp phải là xử lý nhiều loại time format khác nhau, chuyển hóa thành dạng Datetime, chuẩn hóa thời gian lưu trữ và lưu vào database. Và sau đây, mình sẽ viết bài chia sẻ về cách mình xử lý kiểu dữ liệu Datetime trong Python. Trong bài mình sẽ sử dụng Python 3 để xử lý kiểu dữ liệu Datetime. Show
Nội dung chính
Tips 1: Chuẩn hóa múi giờ sử dụngTips 2: Convert String thành Datetime Tips 3: Chuyển hóa kiểu Datetime sang Timestamp Python Tips 2: Convert String thành DatetimeTips 3: Chuyển hóa kiểu Datetime sang Timestamp Python
Tips 4: Chuyển hóa kiểu native date sang UTC timezone
Tips 5: Convert UTC sang timezone khác
Tips 3: Chuyển hóa kiểu Datetime sang Timestamp PythonTips 4: Chuyển hóa kiểu native date sang UTC timezone
Tips 4: Chuyển hóa kiểu native date sang UTC timezoneTips 5: Convert UTC sang timezone khác
Tips 6: Chuyên từ Timestamp sang Datetime Tips 5: Convert UTC sang timezone khácTips 6: Chuyên từ Timestamp sang Datetime
Tips 6: Chuyên từ Timestamp sang DatetimeTips 7: Convert Datetime sang ISO 8601Tips 7: Convert Datetime sang ISO 8601Example 1: datetime to string using strftime()
How strftime() works?Example 2: Creating string from a timestamp Example 2: Creating string from a timestamp Format Code List
Đầu tiên, cũng là quan trọng nhất, chuẩn hóa múi giờ sử dụng để convert các kiểu thời gian. Mình lựa chọn sử dụng chuẩn múi giờ UTC để chuẩn hóa thời gian cho cả hệ thống cũng như làm múi giờ chuẩn để xử lý các loại format thời gian khác nhau.
Tham khảo thêm về thời gian UTC tại
Xử lý bằng hàm 7Jun 9, 2011 at 6:272
Xử lý bằng strptime Lưu ý:Jun 9, 2011 at 6:30 Các rất nhiều format time khác nhau nên để có thể chuyển từ string thành Datetime 7 chỉ có thể xử lý một số dạng tiêu chuẩn, nếu khác dạng tiêu chuẩn phải hiểu ra cấu trúc time string để sử dụng hàm 9 để cắt chuỗi tạo DatetimeNPE
Nếu kiểu dữ liệu Datetime không rõ múi giờ thì được gọi là 1 Timestamp là kiểu thời gian thông dụng của hệ thông Unix, tìm hiểu thêm tại Kiểm tra kiểu timezone 0Lưu ý: không sử dụng hàm replace, hàm replace sẽ chỉ thay đổi tzinfo không qui đổi thời gian từ múi giờ này sang múi giờ khácJun 9, 2011 at 6:31 Nếu bạn ở múi giờ Việt Nam (GMT + 7), tức nếu hiện tại là 8 giờ sáng (giờ Việt Nam) thì quy ra giờ UTC tức 1 giờ sáng (giờ UTC). Vậy nếu Datetime đang ở múi giờ UTC, ta phải convert nó sáng giờ Việt Nammgiuca
1 ISO 8601 là một tiêu chuẩn quốc tế, được đưa ra bởi Tổ chức tiêu chuẩn hóa quốc tế (ISO) lần đầu tiên năm 1988, mô tả quy cách viết ngày tháng và thời gian theo cách đơn giản nhất mà máy tính có thể hiểu được. Còn đối với Python ISO 8601 Datetime là string format time thông dụng. Example 1: datetime to string using strftime()How strftime() works? 1Example 2: Creating string from a timestamp 2Format Code List How strftime() works?Example 2: Creating string from a timestamp
Ví dụ 2: Tạo chuỗi từ dấu thời gian 3Khi bạn chạy chương trình, đầu ra sẽ là: 4Danh sách mã định dạngBảng dưới đây hiển thị tất cả các mã mà bạn có thể chuyển sang phương thức 5.
import datetime date_time_now = datetime.datetime.now() # Convert Datetime thành dạng ISO 8601 iso_format = date_time_now.isoformat() 2 5Khi bạn chạy chương trình, đầu ra sẽ là: 6UTC bù ở dạng +hhmm hoặc -hhmm. & nbsp; import datetime date_time_now = datetime.datetime.now() # Convert Datetime thành dạng ISO 8601 iso_format = date_time_now.isoformat() 3Tên múi giờ.. 4Ngày trong năm dưới dạng số thập phân không có viền. 001, 002, ..., 366 import datetime date_time_now = datetime.datetime.now() # Convert Datetime thành dạng ISO 8601 iso_format = date_time_now.isoformat() 5Ngày trong năm dưới dạng số thập phân. 1, 2, ..., 366 6Số tuần của năm (Chủ nhật là ngày đầu tiên của tuần). Tất cả các ngày trong một năm mới trước Chủ nhật đầu tiên được coi là vào tuần 0. 00, 01, ..., 53 7use the CONVERT() , TRY_CONVERT() , or CAST() function.Số tuần của năm (thứ Hai là ngày đầu tiên của tuần). Tất cả các ngày trong một năm mới trước ngày thứ Hai đầu tiên được coi là vào tuần 0. 8Đại diện ngày và thời gian thích hợp của địa phương. Thứ Hai ngày 30 tháng 9 07:06:05 2013 9
|