Hướng dẫn convert iso date to timestamp python - chuyển đổi ngày iso thành trăn dấu thời gian

30

Mới! Lưu câu hỏi hoặc câu trả lời và sắp xếp nội dung yêu thích của bạn. Tìm hiểu thêm.
Learn more.

Tôi đang cố gắng thêm hai lần với nhau. Tem thời gian ISO & NBSP; 8601 là '1984-06-02T19: 05: 00.000z' và tôi muốn chuyển đổi nó thành giây. Tôi đã thử sử dụng mô -đun Python

from datetime import datetime

utc_dt = datetime.strptime('1984-06-02T19:05:00.000Z', '%Y-%m-%dT%H:%M:%S.%fZ')

# Convert UTC datetime to seconds since the Epoch
timestamp = (utc_dt - datetime(1970, 1, 1)).total_seconds()
# -> 455051100.0
0, nhưng nó chỉ là một trình phân tích cú pháp.

Bất kỳ đề xuất?

Hướng dẫn convert iso date to timestamp python - chuyển đổi ngày iso thành trăn dấu thời gian

Hỏi ngày 2 tháng 12 năm 2014 lúc 9:03Dec 2, 2014 at 9:03

Hướng dẫn convert iso date to timestamp python - chuyển đổi ngày iso thành trăn dấu thời gian

Zaynaib Giwazaynaib GiwaZaynaib Giwa

4.9747 Huy hiệu vàng20 Huy hiệu bạc25 Huy hiệu Đồng7 gold badges20 silver badges25 bronze badges

3

Nếu bạn muốn có được giây kể từ Epoch, bạn có thể sử dụng

from datetime import datetime

utc_dt = datetime.strptime('1984-06-02T19:05:00.000Z', '%Y-%m-%dT%H:%M:%S.%fZ')

# Convert UTC datetime to seconds since the Epoch
timestamp = (utc_dt - datetime(1970, 1, 1)).total_seconds()
# -> 455051100.0
1 để chuyển đổi nó thành đối tượng
from datetime import datetime

utc_dt = datetime.strptime('1984-06-02T19:05:00.000Z', '%Y-%m-%dT%H:%M:%S.%fZ')

# Convert UTC datetime to seconds since the Epoch
timestamp = (utc_dt - datetime(1970, 1, 1)).total_seconds()
# -> 455051100.0
2 và sau đó chuyển đổi nó để bằng cách sử dụng phương thức
from datetime import datetime

utc_dt = datetime.strptime('1984-06-02T19:05:00.000Z', '%Y-%m-%dT%H:%M:%S.%fZ')

# Convert UTC datetime to seconds since the Epoch
timestamp = (utc_dt - datetime(1970, 1, 1)).total_seconds()
# -> 455051100.0
3. Như vậy:

>>> import dateutil.parser as dp
>>> t = '1984-06-02T19:05:00.000Z'
>>> parsed_t = dp.parse(t)
>>> t_in_seconds = parsed_t.timestamp()
>>> t_in_seconds
'455051100'

Vì vậy, bạn đã ở một nửa đó :)

Hướng dẫn convert iso date to timestamp python - chuyển đổi ngày iso thành trăn dấu thời gian

Đã trả lời ngày 2 tháng 12 năm 2014 lúc 9:53Dec 2, 2014 at 9:53

Hướng dẫn convert iso date to timestamp python - chuyển đổi ngày iso thành trăn dấu thời gian

10

Ngày của bạn là thời gian UTC ở định dạng RFC 3339, bạn có thể phân tích nó chỉ bằng stdlib:

from datetime import datetime

utc_dt = datetime.strptime('1984-06-02T19:05:00.000Z', '%Y-%m-%dT%H:%M:%S.%fZ')

# Convert UTC datetime to seconds since the Epoch
timestamp = (utc_dt - datetime(1970, 1, 1)).total_seconds()
# -> 455051100.0

Xem thêm Chuyển đổi DateTime.Date thành UTC TimeStamp trong Python

Làm cách nào để chuyển đổi nó trở lại định dạng ISO 8601?

Để chuyển đổi Posix Timestamp trở lại, hãy tạo một đối tượng DateTime UTC từ nó và định dạng nó bằng phương thức

from datetime import datetime

utc_dt = datetime.strptime('1984-06-02T19:05:00.000Z', '%Y-%m-%dT%H:%M:%S.%fZ')

# Convert UTC datetime to seconds since the Epoch
timestamp = (utc_dt - datetime(1970, 1, 1)).total_seconds()
# -> 455051100.0
4:

from datetime import datetime, timedelta

utc_dt = datetime(1970, 1, 1) + timedelta(seconds=timestamp)
print(utc_dt.strftime('%Y-%m-%dT%H:%M:%S.%fZ'))
# -> 1984-06-02T19:05:00.000000Z

Lưu ý: Nó in sáu chữ số sau điểm thập phân (micro giây). Để có được ba chữ số, hãy xem định dạng micro giây đến 2 chữ số thập phân (trên thực tế chuyển đổi micro giây thành hàng chục micro giây).

Đã trả lời ngày 2 tháng 12 năm 2014 lúc 14:37Dec 2, 2014 at 14:37

JFSJFSjfs

383K182 Huy hiệu vàng948 Huy hiệu bạc1619 Huy hiệu đồng182 gold badges948 silver badges1619 bronze badges

4

Đây là một giải pháp trong Python 3:

$ date +%s

$ TZ=US/Pacific date -d @ '+%Y%m%d %H:%M:%S %z'
20150402 20:07:32 -0700
$ TZ=US/Eastern date -d @ '+%Y%m%d %H:%M:%S %z'
20150402 23:07:32 -0400
$ python3
>>> from datetime import datetime,timezone
>>> def iso2epoch(ts):
...     return int(datetime.strptime(ts[:-6],"%Y%m%d %H:%M:%S").replace(tzinfo=timezone.utc).timestamp()) - (int(ts[-2:])*60 + 60 * 60 * int(ts[-4:-2]) * int(ts[-5:-4]+'1'))
...
>>> iso2epoch("20150402 20:07:32 -0700")

>>> iso2epoch("20150402 23:07:32 -0400")

>>>

Hướng dẫn convert iso date to timestamp python - chuyển đổi ngày iso thành trăn dấu thời gian

Đã trả lời ngày 3 tháng 4 năm 2015 lúc 3:31Apr 3, 2015 at 3:31

Hướng dẫn convert iso date to timestamp python - chuyển đổi ngày iso thành trăn dấu thời gian

Toppktoppktoppk

6783 Huy hiệu bạc8 Huy hiệu Đồng3 silver badges8 bronze badges

2


Tiêu chuẩn ISO 8601 xác định một định dạng được quốc tế công nhận để đại diện cho ngày và thời gian. ISO 8601 là một định dạng ngày và thời gian giúp loại bỏ các hình thức khác nhau trong các quy ước ngày, ngày và thời gian trên toàn thế giới. Để giải quyết sự không chắc chắn này của các định dạng khác nhau, ISO sẽ đặt một định dạng để đại diện cho ngày của Yyyyy-mm-dd.

Ví dụ, ngày 31 tháng 5 năm 2022, được biểu thị là 2022-05-31.

Trong bài viết này, chúng tôi sẽ thảo luận về cách nhận ngày ISO 8601 ở định dạng chuỗi trong Python.

Sử dụng phương thức .isoformat ()

Phương thức .isoformat () trả về một chuỗi các giá trị ngày và thời gian của một đối tượng python datetime.date ở định dạng ISO 8601.isoformat() method returns a string of date and time values of a python datetime.date object in ISO 8601 format.

Cú pháp

Phương thức cú pháp của phương thức .isoformat () như sau.

date.isoformat(sep=’T’,timespec=’auto’)

Where,

  • SEP (Tham số tùy chọn) - Đó là một ký tự phân tách sẽ được in giữa các trường ngày và giờ. − It is a separator character that is to be printed between the date and time fields.

  • TIMEPEC (Tham số tùy chọn) - Đây là định dạng định dạng cho TimesPec. Giá trị mặc định là tự động. − It is the format specifier for timespec. The default value is auto.

Trong phương thức này, chúng tôi nhận được chuỗi DateTime hiện tại bằng cách sử dụng phương thức DateTime.now () trả về ngày và thời gian hiện tại theo định dạng thời gian. Chuỗi này sau đó được chuyển đổi thành định dạng ISO bằng cách sử dụng phương thức .isoforMat ().

Thí dụ

Trong mã ví dụ này, chúng tôi nhận được một ngày ISO 8601 ở định dạng chuỗi bằng phương thức .isoforMat ().

from datetime import datetime current_date = datetime.now() print(current_date.isoformat())

Đầu ra

Đầu ra của mã trên như sau.

2022-05-31T10:29:01.226141

Sử dụng phương thức .strftime ()

Phương thức strftime () được cung cấp bởi mô -đun DateTime trong Python. Ở đây chúng tôi sử dụng phương thức strftime () để chuyển đổi chuỗi DateTime thành DateTime. Nó cũng được sử dụng để chuyển đổi DateTime thành Epoch.

Epoch là điểm khởi đầu của thời gian và phụ thuộc vào nền tảng. Epoch là ngày 1 tháng 1 năm 1970, 00:00:00 (UTC) trên các hệ thống Windows và hầu hết các hệ thống UNIX và các giây nhảy không được bao gồm trong thời gian tính bằng giây kể từ kỷ nguyên. Chúng tôi sử dụng Time.gmtime (0) để có được kỷ nguyên trên một nền tảng nhất định.

Cú pháp

Phương thức cú pháp của phương thức .isoformat () như sau.

date.strftime(format)

SEP (Tham số tùy chọn) - Đó là một ký tự phân tách sẽ được in giữa các trường ngày và giờ.format is used to specify the required format of the output.

TIMEPEC (Tham số tùy chọn) - Đây là định dạng định dạng cho TimesPec. Giá trị mặc định là tự động.

Thí dụ

Trong mã ví dụ này, chúng tôi nhận được một ngày ISO 8601 ở định dạng chuỗi bằng phương thức .isoforMat ().

from datetime import datetime current_date = datetime.now() print(current_date.strftime('%Y-%m-%dT%H:%M:%S.%f%z'))

Đầu ra

Đầu ra của mã trên như sau.

2022-09-05T10:35:08.217174

Hướng dẫn convert iso date to timestamp python - chuyển đổi ngày iso thành trăn dấu thời gian

Sử dụng phương thức .strftime ()

  • Phương thức strftime () được cung cấp bởi mô -đun DateTime trong Python. Ở đây chúng tôi sử dụng phương thức strftime () để chuyển đổi chuỗi DateTime thành DateTime. Nó cũng được sử dụng để chuyển đổi DateTime thành Epoch.
  • Epoch là điểm khởi đầu của thời gian và phụ thuộc vào nền tảng. Epoch là ngày 1 tháng 1 năm 1970, 00:00:00 (UTC) trên các hệ thống Windows và hầu hết các hệ thống UNIX và các giây nhảy không được bao gồm trong thời gian tính bằng giây kể từ kỷ nguyên. Chúng tôi sử dụng Time.gmtime (0) để có được kỷ nguyên trên một nền tảng nhất định.
  • Cú pháp của strftime () được mô tả dưới đây.
  • Trong đó, định dạng được sử dụng để chỉ định định dạng cần thiết của đầu ra.
  • Trong phương thức này, chúng tôi nhận được ngày và thời gian hiện tại từ CPU cục bộ bằng cách sử dụng phương thức DateTime.now (). Chuỗi này được chuyển đổi thành chuỗi định dạng ISO bằng cách sử dụng phương thức .strftime (). Ở đây như chúng ta biết rằng định dạng ISO là yyyy-mm-dd, vì vậy chúng tôi chuyển đổi nó thành định dạng này bằng cách sử dụng mã định dạng sau- .
  • Sau đây là mã ví dụ, đến ngày ISO ở định dạng chuỗi bằng phương thức .strftime ().
  • Cập nhật vào ngày 08 tháng 9 năm 2022 07:14:41
  • Câu hỏi và câu trả lời liên quan
  • Python Pandas - Định dạng Timedelta là ISO 8601
  • Hiển thị Ngày tiêu chuẩn ISO 8601 trong Java
  • Làm thế nào để chuyển đổi chuỗi ISO 8601 cho đến ngày/thời gian đối tượng trong Android?
  • Làm thế nào để chuyển đổi chuỗi ISO 8601 cho đến ngày/thời gian trong Android bằng cách sử dụng Kotlin?
  • Làm cách nào để định dạng một chuỗi bằng cách sử dụng từ điển trong Python 3?
  • Làm cách nào để có được ngày hiện tại trong JavaScript?
  • Làm thế nào để định dạng chuỗi ngày trong PowerShell?
  • Làm cách nào để có được ngày và giờ hiện tại trong JavaScript?

Làm cách nào để chuyển đổi ISO theo thời gian trong Python?

Chuỗi này được chuyển đổi thành chuỗi định dạng ISO bằng cách sử dụng phương thức .strftime ().Ở đây như chúng ta biết rằng định dạng ISO là yyyy-mm-dd, vì vậy chúng tôi chuyển đổi nó thành định dạng này bằng cách sử dụng mã định dạng sau-Cấm%y-%m-%dt%h:%m:%s.%f%z.by using the . strftime() method. Here as we know that ISO format is YYYY-MM-DD so we convert it into this format by using the following format code- “%Y-%m-%dT%H:%M:%S. %f%z”.

Làm thế nào để tôi sử dụng ngày ISO trong Python?

Định dạng của ISO 8601 Ngày: Trong Python ISO 8601 Ngày được biểu diễn bằng YYYYY-MM-DDTHH: MM: SS.MMMMMMMM.Ví dụ, ngày 18 tháng 5 năm 2022, được biểu thị là 2022-05-18T11: 40: 22.519222.YYYY-MM-DDTHH:MM:SS. mmmmmm format. For example, May 18, 2022, is represented as 2022-05-18T11:40:22.519222.

Làm cách nào để in ngày trong tệp ISO?

Định dạng ISO 8601 tiêu chuẩn là tất cả các định dạng ngày cho lịch Gregorian.Định dạng này quy định rằng một ngày lịch cần được biểu diễn bằng năm chữ số, sau đó là một tháng hai chữ số và ngày hai chữ số.tức là, yyyy-mm-dd.Ví dụ: 2020-01-01.YYYY-MM-DD. Example: 2020-01-01.

Là định dạng iso python?

Hàm isoforMat () này thuộc về mô -đun DateTime trong Python.Nó chuyển đổi giá trị đối tượng ngày thành một chuỗi ở định dạng ISO.Nó theo định dạng ISO 8601, hoặc Yyyy-MM-DD.Nó là một chức năng nghịch đảo của ngày.isoformat() function belongs to the datetime module in Python. It converts the Date object value into a string in ISO format. It follows the ISO 8601, or YYYY-MM-DD, format. It is an inverse function of date.