Chính xác thì T và Z có nghĩa là gì trong nhãn thời gian?


98

Tôi có giá trị dấu thời gian này được trả lại bởi một dịch vụ web "2014-09-12T19:34:29Z"

Tôi biết rằng nó có nghĩa là múi giờ, nhưng chính xác thì nó có nghĩa là gì?

Và tôi đang cố gắng mô phỏng dịch vụ web này, vậy có cách nào để tạo dấu thời gian này bằng cách sử dụng strftimetrong python không?

Xin lỗi nếu điều này quá rõ ràng, nhưng Google không hữu ích lắm và strftime()trang tham khảo cũng vậy.

Tôi hiện đang sử dụng cái này:

x.strftime("%Y-%m-%dT%H:%M:%S%Z")
'2015-03-26T10:58:51'

Câu trả lời:


127

Các Tkhông thực sự đại diện cho bất cứ điều gì. Nó chỉ là dấu phân cáchđịnh dạng ngày-giờ kết hợp ISO 8601 yêu cầu. Bạn có thể đọc nó như một chữ viết tắt của Time .

Viết Ztắt của múi giờ Zero , vì nó được bù bằng 0 so với Giờ phối hợp quốc tế (UTC) .

Cả hai ký tự chỉ là các ký tự tĩnh trong định dạng, đó là lý do tại sao chúng không được ghi lại bằng datetime.strftime()phương pháp. Bạn có thể đã sử dụng Qhoặc Mhoặc Monty Pythonvà phương thức cũng sẽ trả về chúng không thay đổi; phương thức chỉ tìm kiếm các mẫu bắt đầu bằng %để thay thế các mẫu bằng thông tin từ datetimeđối tượng.


9
Thực Ztế là viết tắt của Zulu , là "tên" của UTC0. Nghe có vẻ kỳ lạ nhưng mỗi múi giờ đều có tên tương ứng.
TomCho

19
@TomCho: không, Zululà tên bảng chữ cái phiên âm NATO Z, và nó được sử dụng vì múi giờ múi giờ Zero. Xem liên kết Wikipedia mà tôi đã bao gồm trong câu trả lời: Giờ UTC còn được gọi là giờ "Zulu", vì "Zulu" là từ mã trong bảng chữ cái chính tả ICAO cho "Z".
Martijn Pieters

5
@TomCho: có vẻ như TimeAndDate có ngược lại; Zđã đến trước đây Zulu, tôi muốn nói. en.wikipedia.org/wiki/List_of_military_time_zones rất thú vị nhưng không đưa ra bất kỳ lời biện minh lịch sử nào cho việc Z được sử dụng cho múi giờ 0-offset, chỉ có Zvậy mới được đặt tên như vậy Zulu.
Martijn Pieters

1
+1 Đúng, tôi đồng ý với bạn. Thật kỳ lạ khi họ không sử dụng chữ cái Jtrong các quân khu. Có thể do cách phát âm khác nhau trong các thành ngữ như tiếng Đức, hoặc tiếng Phần Lan? Dù sao, cảm ơn vì đã xóa mọi thứ.
TomCho

4
@TomCho: Zđược sử dụng cho +0000(GMT vào thời điểm đó) từ những năm 1950 (trước cả khi UTC tồn tại). Theo tôi hiểu Zthì đây chỉ là một chữ cái (bạn có thể sử dụng cách ghi nhớ Zero và / hoặc phát âm nó như Zulu(từ bảng chữ cái chính tả được sử dụng rộng rãi)
jfs
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.