Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

Python Pandas - ดึงเวลาเป็น datetime.time พร้อม timezone จาก DateTimeIndex


คำอธิบาย

ใช้ property DateTimeIndex.timetz ดึง numpy array ของ datetime.time objects **พร้อมข้อมูล timezone**

ตัวอย่างโค้ด

import pandas as pd

datetimeindex = pd.date_range('2021-10-20 02:30:50', periods=5, tz='Australia/Sydney', freq='ns')

print("DateTimeIndex...\n", datetimeindex)
print("\nThe numpy array (time part with timezone)..\n", datetimeindex.timetz)

ผลลัพธ์

DateTimeIndex...
DatetimeIndex(['2021-10-20 02:30:50+11:00', '2021-10-20 02:30:50.000000001+11:00',
               '2021-10-20 02:30:50.000000002+11:00', '2021-10-20 02:30:50.000000003+11:00',
               '2021-10-20 02:30:50.000000004+11:00'], dtype='datetime64[ns, Australia/Sydney]', freq='N')

The numpy array (time part with timezone)..
[datetime.time(2, 30, 50, tzinfo=)
 datetime.time(2, 30, 50, tzinfo=)
 datetime.time(2, 30, 50, tzinfo=)
 datetime.time(2, 30, 50, tzinfo=)
 datetime.time(2, 30, 50, tzinfo=)]

ความแตกต่าง .time vs .timetz

  • .time → datetime.time **ไม่มี** timezone info
  • .timetz → datetime.time **มี** timezone info (tzinfo)