Computer >> Máy Tính >  >> Lập trình >> Javascript

Làm thế nào để chuyển đổi một ngày JS thành một đối tượng ngày trong Python?


Bạn chủ yếu muốn chuyển đổi một ngày trong Javascript thành một đối tượng ngày trong Python khi bạn gửi nó qua một kết nối mạng như yêu cầu AJAX hoặc một tin nhắn IPC (trên nodejs). Biểu diễn này sẽ ở định dạng chuỗi và bạn có thể chọn gửi nó ở bất kỳ định dạng nào bạn thích. Bạn có thể sử dụng hàm strptime để phân tích cú pháp chuỗi trở lại đối tượng ngày tháng trong Python. Có những cách tiêu chuẩn hóa như ISO 8061 để gửi và nhận các đối tượng ngày và giờ. Trong trường hợp này nếu chúng ta xem xét một ví dụ đơn giản, nó sẽ dễ hiểu hơn một chút.

Ví dụ

import datetime
# The string that you get from Javascript
date_string = '2017-12-31'
date_format = '%Y-%m-%d'
try:
  date_obj = datetime.datetime.strptime(date_string, date_format)
  print(date_obj)
except ValueError:
  print("Incorrect data format, should be YYYY-MM-DD")

Đầu ra

Điều này sẽ cung cấp kết quả:

2017-12-31 00:00:00

Bạn có thể sử dụng nhiều lệnh khác để phân tích cú pháp ngày. Sau đây là các lệnh được hỗ trợ bởi chuỗi định dạng của strptime ().

Chỉ thị
Ý nghĩa
% a
Tên ngày trong tuần viết tắt của ngôn ngữ.
% A
Tên ngày trong tuần của ngôn ngữ.
% b
Tên tháng viết tắt của ngôn ngữ.
% B
Tên tháng đầy đủ của ngôn ngữ.
% c
Biểu diễn ngày và giờ thích hợp của ngôn ngữ.
% d
Ngày trong tháng dưới dạng số thập phân [01,31].
% H
Giờ (đồng hồ 24 giờ) dưới dạng số thập phân [00,23].
% I
Giờ (đồng hồ 12 giờ) dưới dạng số thập phân [01,12].
% j
Ngày trong năm dưới dạng số thập phân [001,366].
% m
Tháng dưới dạng số thập phân [01,12].
% M
Phút dưới dạng số thập phân [00,59].
% p
Ngôn ngữ tương đương với SA hoặc CH.
% S
Thứ hai dưới dạng số thập phân [00,61].
% U
Số tuần trong năm (Chủ nhật là ngày đầu tiên trong tuần) dưới dạng số thập phân [00,53]. Tất cả các ngày trong năm mới trước Chủ nhật đầu tiên được coi là thuộc tuần 0.
% w
Ngày trong tuần dưới dạng số thập phân [0 (Chủ nhật), 6].
% W
Số tuần trong năm (Thứ Hai là ngày đầu tiên trong tuần) dưới dạng số thập phân [00,53]. Tất cả các ngày trong năm mới trước ngày Thứ Hai đầu tiên được coi là thuộc tuần 0.
% x
Biểu thị ngày thích hợp của ngôn ngữ.
% X
Biểu diễn thời gian thích hợp của ngôn ngữ.
% y
Năm không có thế kỷ dưới dạng số thập phân [00,99].
% Y
Năm với thế kỷ dưới dạng số thập phân.
% Z
Tên múi giờ (không có ký tự nếu không tồn tại múi giờ).
%%
Một ký tự "%" theo nghĩa đen.