Python模块之pandas中时间戳之间的相互转换

文章介绍了如何在Python的pandas库中进行时间戳的获取、转换和格式化,包括从epoch时间到Timestamp,以及Timestamp的各种字符串表示方法,如strftime和strptime的用法。
摘要由CSDN通过智能技术生成

 代码

# 获取当前时间epoch
start_time_epoch = 1694868399  # time.time(),生成当前的时间戳
end_time_epoch = 1694954799
print('start_time_epoch=', start_time_epoch)
print('end_time_epoch=', end_time_epoch)

# 将time_epoch转换为Timestamp
start_time_stamp = pd.Timestamp(start_time_epoch, unit='s')
end_time_stamp = pd.Timestamp(end_time_epoch, unit='s')
print('start_time_stamp=', start_time_stamp)
print('end_time_stamp=', end_time_stamp)

# 将Timestamp转换为字符串
start_time_str = start_time_stamp.strftime("%a-%b-%d-%Y %H:%M:%S")
end_time_str = end_time_stamp.strftime("%a-%b-%d-%Y %H:%M:%S")
print('start_time_str=', start_time_str)
print('end_time_str=', end_time_str)

# 将Timestamp转换为time_epoch
start_time_epoch_2 = start_time_stamp.timestamp()
end_time_epoch_2 = end_time_stamp.timestamp()
print('start_time_epoch_2=', start_time_epoch_2)
print('end_time_epoch_2=', end_time_epoch_2)

运行结果

start_time_epoch= 1694868399
end_time_epoch= 1694954799
start_time_stamp= 2023-09-16 12:46:39
end_time_stamp= 2023-09-17 12:46:39
start_time_str= Sat-Sep-16-2023 12:46:39
end_time_str= Sun-Sep-17-2023 12:46:39
start_time_epoch_2= 1694868399.0
end_time_epoch_2= 1694954799.0

示意图

参考

 一文带你搞懂pandas中的时间处理(详细) - 知乎


datetime — Basic date and time types — Python 3.11.5 documentationSource code: Lib/datetime.py The datetime module supplies classes for manipulating dates and times. While date and time arithmetic is supported, the focus of the implementation is on efficient attr...icon-default.png?t=N7T8https://docs.python.org/3/library/datetime.html#strftime-and-strptime-behavior

Directive

Meaning

Example

Notes

%a

Weekday as locale’s abbreviated name.

Sun, Mon, …, Sat (en_US);

So, Mo, …, Sa (de_DE)

(1)

%A

Weekday as locale’s full name.

Sunday, Monday, …, Saturday (en_US);

Sonntag, Montag, …, Samstag (de_DE)

(1)

%w

Weekday as a decimal number, where 0 is Sunday and 6 is Saturday.

0, 1, …, 6

%d

Day of the month as a zero-padded decimal number.

01, 02, …, 31

(9)

%b

Month as locale’s abbreviated name.

Jan, Feb, …, Dec (en_US);

Jan, Feb, …, Dez (de_DE)

(1)

%B

Month as locale’s full name.

January, February, …, December (en_US);

Januar, Februar, …, Dezember (de_DE)

(1)

%m

Month as a zero-padded decimal number.

01, 02, …, 12

(9)

%y

Year without century as a zero-padded decimal number.

00, 01, …, 99

(9)

%Y

Year with century as a decimal number.

0001, 0002, …, 2013, 2014, …, 9998, 9999

(2)

%H

Hour (24-hour clock) as a zero-padded decimal number.

00, 01, …, 23

(9)

%I

Hour (12-hour clock) as a zero-padded decimal number.

01, 02, …, 12

(9)

%p

Locale’s equivalent of either AM or PM.

AM, PM (en_US);

am, pm (de_DE)

(1), (3)

%M

Minute as a zero-padded decimal number.

00, 01, …, 59

(9)

%S

Second as a zero-padded decimal number.

00, 01, …, 59

(4), (9)

%f

Microsecond as a decimal number, zero-padded to 6 digits.

000000, 000001, …, 999999

(5)

%z

UTC offset in the form ±HHMM[SS[.ffffff]] (empty string if the object is naive).

(empty), +0000, -0400, +1030, +063415, -030712.345216

(6)

%Z

Time zone name (empty string if the object is naive).

(empty), UTC, GMT

(6)

%j

Day of the year as a zero-padded decimal number.

001, 002, …, 366

(9)

%U

Week number of the year (Sunday as the first day of the week) as a zero-padded decimal number. All days in a new year preceding the first Sunday are considered to be in week 0.

00, 01, …, 53

(7), (9)

%W

Week number of the year (Monday as the first day of the week) as a zero-padded decimal number. All days in a new year preceding the first Monday are considered to be in week 0.

00, 01, …, 53

(7), (9)

%c

Locale’s appropriate date and time representation.

Tue Aug 16 21:30:00 1988 (en_US);

Di 16 Aug 21:30:00 1988 (de_DE)

(1)

%x

Locale’s appropriate date representation.

08/16/88 (None);

08/16/1988 (en_US);

16.08.1988 (de_DE)

(1)

%X

Locale’s appropriate time representation.

21:30:00 (en_US);

21:30:00 (de_DE)

(1)

%%

A literal '%' character.

%

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值