- 在线时间
- 476 小时
- 最后登录
- 2025-12-15
- 注册时间
- 2023-7-11
- 听众数
- 4
- 收听数
- 0
- 能力
- 0 分
- 体力
- 7749 点
- 威望
- 0 点
- 阅读权限
- 255
- 积分
- 2909
- 相册
- 0
- 日志
- 0
- 记录
- 0
- 帖子
- 1168
- 主题
- 1183
- 精华
- 0
- 分享
- 0
- 好友
- 1
该用户从未签到
 |
使用 time 模块展示当前日期和时间4 k+ p/ J" G, A1 I1 y
import time: i/ `" w0 T: W
from time import gmtime, strftime! Y& H) P1 n' @" C0 s% B
( g% l* p$ { ]- q
t = time.localtime() / }+ ~2 U0 N% \5 j
print (time.asctime(t)) # Sun May 7 09:30:37 2017
3 r, X% ~( r: a$ d# ?print(strftime("%a, %d %b %Y %H:%M:%S +0000", gmtime())) # Sun, 07 May 2017 04:00:37 +00003 W5 M. p2 A" }7 V8 m6 X
print(strftime("%A", gmtime())) # Sunday
- z9 [* t! }9 x, m' J* \print(strftime("%D", gmtime())) # 05/07/17
/ m4 z7 i. ^" \. \ r& _print(strftime("%B", gmtime())) # May4 g; v& c- f8 y* [; _0 ]7 A
print(strftime("%y", gmtime())) # 17
1 {. ?) W; u, |+ l% p! a
( k2 b2 ?/ _, A# Convert seconds into GMT date, a9 r* _( f$ X) [& q+ S$ O
print(strftime("%a, %d %b %Y %H:%M:%S +0000", gmtime(1234567890))) # Fri, 13 Feb 2009 23:31:30 +00009 c: l: j ^( r$ f$ {$ D
6 x8 C! I' d# D# E二、将天、小时、分钟转换为秒
1 W) t: Z+ q- H! F$ j4 ?SECONDS_PER_MINUTE = 60, n3 a# x. B4 r" k3 t* n; \ f( }
SECONDS_PER_HOUR = 3600
8 v: b) N3 {" y% Z5 HSECONDS_PER_DAY = 86400
' d/ |% d0 r5 G& e; N4 a+ d' ~- N( ^9 P l* d! f
# 输入天、小时、分钟、秒的数量7 j6 W& F2 ^3 y7 i G+ U8 V
days = int(input("Enter number of Days: "))0 b7 }4 o$ r& x8 p0 n
hours = int(input("Enter number of Hours: "))
5 @ z0 _2 f( Z( ]3 K: c* Qminutes = int(input("Enter number of Minutes: "))3 I0 t+ ~9 g+ X |" X+ x7 e8 y# Z# U
seconds = int(input("Enter number of Seconds: ")); _$ m( d0 d( a$ Z
8 K8 Q& o6 [' O- V9 e: U% R
# 计算$ O0 u& _7 _1 o. B1 o
total_seconds = days * SECONDS_PER_DAY
- c! j+ h" E3 s& stotal_seconds = total_seconds + ( hours * SECONDS_PER_HOUR)
! S6 s; y9 q# J9 w+ @total_seconds = total_seconds + ( minutes * SECONDS_PER_MINUTE)
% \; A) m2 V' t1 V: Ctotal_seconds = total_seconds + seconds+ v: Z {0 t' R1 W) ~
r" P$ K# P& F! m! I2 {3 L# 结果& y. N4 n( n$ M8 `3 W
print("Total number of seconds: ","%d"%(total_seconds))
2 J6 T/ N$ a0 _1 t$ t'''
t! J4 z J( D5 _% p# sEnter number of Days: 5
. i7 V; l$ |6 x' @# gEnter number of Hours: 36! f6 i$ {9 d6 B4 @4 Z w0 B
Enter number of Minutes: 24
3 L5 y. H0 ]9 n/ |; sEnter number of Seconds: 15
0 i+ r4 `$ k4 h p+ BTotal number of seconds: 563055
' M# e: [) I w3 J) g7 J'''
) ]% B6 d* X7 M) h; \3 Z: h4 y+ c4 N/ S: |+ w
三、使用 Pandas 获取当前日期和时间
# J7 Z& }! K: S: p* i; F" Himport pandas as pd' n9 O2 \- C# _0 ` {/ O) F( |
print(pd.datetime.now()) # 2018-01-19 16:08:28.393553& H3 T- E: c- J
print(pd.datetime.now().date()) # 2018-01-19% l# w* K( |+ W9 C
print(pd.datetime.now().year) # 2018
8 k) a3 l/ h# V2 ~" C$ Mprint(pd.datetime.now().month) # 1
( Y$ |4 w9 O( ?$ _print(pd.datetime.now().day) # 19/ h; d0 [7 W- k
print(pd.datetime.now().hour) # 16
$ H8 J' \/ S0 ^5 I* D2 L1 jprint(pd.datetime.now().minute) # 8
5 X+ K5 G( J( u' U2 l+ Y; \& t' U* Kprint(pd.datetime.now().second) # 281 N6 Z& }% {% n
print(pd.datetime.now().microsecond) # 394553/ H7 v3 E8 u- s2 R j: i+ Z# F
# E" V9 A. R y- L
四、将字符串转换为日期时间对象
/ c/ W: U3 i$ K1 Qfrom datetime import datetime0 `9 \6 P v8 i* Z" G. k5 C9 }
from dateutil import parser
, J) P" q: @; @, v ?! y# `8 N6 q5 V* S& {% h; z1 _
d1 = "Jan 7 2015 1:15PM"! Z9 A$ F( @, H4 x3 w
d2 = "2015 Jan 7 1:33PM", S# R! c( ~2 \. A' c1 b. q
) d$ \1 j1 e+ H3 V, p
# If you know date format1 A4 A9 W; N0 o& G( c
date1 = datetime.strptime(d1, '%b %d %Y %I:%M%p')
+ ?: Y( m. N! u5 W& {9 fprint(type(date1)) # class 'datetime.datetime'
( c) M* r* c4 }+ \print(date1) # 2015-01-07 13:15:00
3 Y/ z; v& Y: S0 o/ _2 @2 M
' y" N2 _- j `4 F# If you don't know date format
6 y" ]$ `& p, ]3 }: {date2 = parser.parse(d2)1 E0 q% T2 r3 b. O3 i
print(type(date2)) # class 'datetime.datetime') i7 V9 A, o) q
print(date2) # 2015-01-07 13:33:004 v: {6 S# P2 K' W% v
6 q2 B7 J. m6 `+ O0 e' a
五、以毫秒为单位获取当前时间2 e8 C; {5 ?( M
import time! g; ]4 T; `1 A& l
9 T; C' ^; `! Cmilliseconds = int(round(time.time() * 1000))
g5 [+ a3 Q7 [& h- V5 _: a+ fprint(milliseconds) # 15163642706502 x; B; S. X# k
- h, G0 Z3 l* y; Z/ Q( _" C六、以 MST、EST、UTC、GMT 和 HST 获取当前日期时间
3 G2 b. V0 R- z4 Xfrom datetime import datetime
/ k+ G" \/ s( hfrom pytz import timezone
( c1 ]5 m6 M5 b0 a4 b5 M0 B( Z
2 O5 |4 F' y6 y) z; J0 `mst = timezone('MST')3 ]2 ^4 B1 W+ I8 j# N4 t1 @
print("Time in MST:", datetime.now(mst)) # Time in MST: 2017-01-19 06:06:14.495605-07:003 h) J& j$ B+ \) O0 S
est = timezone('EST')
: Y0 A) u% Z# G3 A0 i8 V# Vprint("Time in EST:", datetime.now(est)) # Time in EST: 2017-01-19 08:06:14.496606-05:00
* f: U2 w5 r# V; K# w$ Tutc = timezone('UTC')
2 }! E0 b. l1 A$ M& Nprint("Time in UTC:", datetime.now(utc)) # Time in UTC: 2017-01-19 13:06:14.496606+00:00! p" s- y; K- f
gmt = timezone('GMT')
1 `3 \+ h( D V& ^print("Time in GMT:", datetime.now(gmt)) # Time in GMT: 2017-01-19 13:06:14.496606+00:00
! v5 T8 Q' W* z- D- y% x, o" rhst = timezone('HST')
# T, X' o8 E9 R8 v6 j gprint("Time in HST:", datetime.now(hst)) # Time in HST: 2017-01-19 03:06:14.497606-10:00" ]) ~) H, d* Y" U+ t0 V1 x
1 ~% C: w. {9 b七、从给定的日期当中获取星期几/ |9 ?+ M; S3 _# q) O8 G
import datetime7 {/ d! }9 D: L: M/ ~6 m$ S1 m' }
4 ^/ Q3 Z; p# P) H: | I# X* B
dayofweek = datetime.date(2010, 6, 16).strftime("%A")
/ \. H' n m) i4 F' z- N8 Fprint(dayofweek) # Wednesday
) o! l8 s' w0 Z
9 v# B5 r6 t$ `1 G* X+ _( ?# weekday()方法: 0代表周一,6代表周日( c4 j+ s" k" a( r
print("weekday():", datetime.date(2010, 6, 16).weekday()) # weekday(): 2
' I( d N2 S/ l/ v$ E
8 x8 B4 r& F" y1 o0 \) b, j# isoweekday() 方法: 1代表周一,7代表周日
" L( t* F0 H. }" Z& {print("isoweekday()", datetime.date(2010, 6, 16).isoweekday()) # isoweekday() 3
4 X- Y, z: _1 S* d5 d
) w7 p) h! M" D9 u K3 Rdayofweek = datetime.datetime.today().strftime("%A")2 n4 ]! i. k1 c0 q3 \" l
print(dayofweek) # Friday4 B3 I- i- r% A* m; M y z: `% X
print("weekday():", datetime.datetime.today().weekday()) # weekday(): 4$ i( Q+ u7 f! D, b& k
print("isoweekday()", datetime.datetime.today().isoweekday()) # isoweekday(): 5
& m. U& l2 J& [: H( d4 @* d) f6 E! _
" K% w6 |# g$ ?$ T. g八、计算两个日期时间对象之间的时差# M7 G7 w3 V: ?; Z
import datetime' w# {0 O) ]) c8 q6 R9 O* T
from datetime import timedelta/ L; {# B. `$ Y, O( B
$ d% \" Z& z- I& Q3 B3 F0 z3 |9 pdatetimeFormat = '%Y-%m-%d %H:%M:%S.%f'
" M+ ^/ v- U" ?! v/ xdate1 = '2016-04-16 10:01:28.585'
$ `1 n; }0 m2 ]" J& \" U0 |date2 = '2016-03-10 09:56:28.067'
; G9 x- }$ M/ ldiff = datetime.datetime.strptime(date1, datetimeFormat)\1 [: u, i: m9 U6 r! W" J
- datetime.datetime.strptime(date2, datetimeFormat)
9 b1 l( U+ b8 L+ Z3 L! Y. V
) L* C! A3 H3 H; h, Gprint("Difference:", diff) # Difference: 37 days, 0:05:00.518000! |; T0 v# L, X" [$ s% g) ^; J
print("Days:", diff.days) # Days: 37
0 w) M6 v) }9 x1 a/ q% X, Rprint("Microseconds:", diff.microseconds) # Microseconds: 518000, U! d% I7 x; ^1 I
print("Seconds:", diff.seconds) # Seconds: 300( P q' l( b O/ l( \7 h
& A- ]6 x' |/ {+ q1 d9 _
九、将 5 分钟添加到 Unix 时间戳
4 O3 E t8 k# |import datetime
+ c, L' K" S/ P4 Nimport calendar
) l4 W/ y$ r" I' {2 e- u
5 C* Q. \. v# L# ~: ofuture = datetime.datetime.utcnow() + datetime.timedelta(minutes=5)7 ^& Y- \( L Y! b# e
print(calendar.timegm(future.timetuple())) # 1621069619
# v8 S( B0 H) Q% E% ^ x9 G& o- n. W
- m6 Q9 R- V5 U$ b$ }十、遍历一系列日期' }8 V/ n( |: e
import datetime3 O6 e' e% p- ^' Q
/ K* {6 P) c) r: R7 W& E0 G8 gstart = datetime.datetime.strptime("21-06-2020", "%d-%m-%Y")
% u: o3 q3 H; C8 o, s, o8 rend = datetime.datetime.strptime("05-07-2020", "%d-%m-%Y")% G8 A/ D+ s! L5 j6 h+ j
date_generated = [start + datetime.timedelta(days=x) for x in range(0, (end - start).days)]
: k+ x, d+ }7 u) {
7 F; O6 w U& s" e! a& yfor date in date_generated:; d! Y; Z! o( O1 \& X
print(date.strftime("%d-%m-%Y"))
" h7 \3 p1 b. j+ K
L7 t2 r8 x' N8 O7 C9 x1 s十一、巴黎时间更改为纽约时间 I; R9 u5 _! f
import pendulum
' U6 C! b/ T8 q+ r$ {: z, ^- W# Z( G8 f* i
in_paris = pendulum.datetime(2016, 8, 7, 22, 24, 30, tz='Europe/Paris')" v# R; Q' \8 E5 Q
print(in_paris) # 2016-08-07T22:24:30+02:00
* b3 q9 g, ?3 L) j! z/ T4 n& E6 E5 k
in_us = in_paris.in_timezone('America/New_York')
+ q+ I, c, V# }& [, Jprint(in_us) # 2016-08-07T16:24:30-04:003 `! o6 Z; e, K6 n7 S, Y' b
* L: w9 e5 O) l/ |2 c1 h% _0 t十二、使用 Python 获得最后7个工作日% l: C: z$ {8 X- h3 L
from datetime import date
( V' ]8 Y- A8 Q! p- F: Lfrom datetime import timedelta/ r6 t8 Q! o* F- w- ?
f$ w4 G" a. |" s; R
today = date.today()
2 q$ j4 B( M8 }6 P/ b) O
( ~( Q6 c# l: q7 a# B. Wfor i in range(7):
3 Z. _! j0 C5 p' s6 R d = today - timedelta(days=i). h. ?6 n% u7 \! y, e
if d.weekday() < 5:9 k U- w U$ g; f! C
print(d)
, u( a! n7 e" q5 Z- i& t1 H/ n' X6 C* J5 F# k% V
十三、从今天的日期和一个人的生日推算年龄' c3 m: K5 M9 j/ ?0 E
from datetime import date% w2 d1 K* F, t
0 G( S7 R. N0 d5 A- p4 y5 f) Z1 q7 b/ @, q& u/ E( T
def calculate_age(born):
) h8 p! g/ P, y today = date.today()
* i$ k+ L4 Z( Z; J try:
: i* |& Z) S% G6 D birthday = born.replace(year=today.year)9 y6 a9 Z4 ~; O* k
except ValueError:2 l. f. M ^ Z, b( Y6 v
birthday = born.replace(year=today.year, month=born.month + 1, day=1)
( J3 g4 b* T/ s/ d if birthday > today:' ]3 Y* j/ D/ _ c
return today.year - born.year - 1
, P5 S# U+ A& g2 f7 l else:6 X R. J+ _- s5 l) ]* ~9 `
return today.year - born.year7 j8 z. H/ _6 E D
8 C7 B* z. i3 b/ x; v
5 B: U9 r5 F8 F" ^: i
print(calculate_age(date(2001, 3, 1))) S8 {! d+ B0 b. c
; _- r" L3 V% u$ ~: z) p6 P
十四、获得本月的第一个星期二- H8 v0 `" |; \8 G
import calendar
, D% }$ I* H6 ?, A; O+ kfrom datetime import datetime
4 K( }5 Y$ s. `6 f& P8 t
( }- U+ ^$ V' B; T% W- [! n% V0 N0 zc = calendar.Calendar(firstweekday=calendar.SUNDAY)% [' j8 ` M4 V0 K! [6 J
monthcal = c.monthdatescalendar(datetime.today().year, datetime.today().month); V8 H' A: q: N) {/ s+ F
#Python小白学习交流群:153708845 / r. |: a& l0 J0 p) u7 C
try:3 G' c- ]# j/ {, d! M5 F/ v7 q
tues = [day for week in monthcal for day in week if
0 h+ x9 D! t1 D$ P2 ? day.weekday() == calendar.TUESDAY and day.month == datetime.today().month][0]9 D' Z& n7 k; t& b5 U* n
print(tues)6 y: S' {7 {1 \" A! z, Y: E* f
except IndexError:" `( b+ y7 |; o" G4 P( T$ |
print('No date found')
9 |2 B* V' S `0 y$ q. r! o. n$ B* F# u% F: v* p- A+ ^
十五、将整数转换为日期对象
( t+ S* ]! ?4 c+ yfrom datetime import datetime- N4 f+ Y# E& K
7 U) k$ p7 P+ v# ji = 1545730073
6 H2 j6 _9 T# m+ h5 v) P# Z( atimestamp = datetime.fromtimestamp(i)0 i4 s3 F' U/ u, N5 Q
# E- z2 a D; l% C1 t
print(timestamp) # 2018-12-25 14:57:53; g+ x: B' i& j* M3 q
print(type(timestamp))
5 [# Y2 Z& a2 d! {; C0 R" |% s, u# h* u9 x/ G: f5 {( }- P' |9 `7 c }
十六、当前日期减去 N 天的天数' Y9 ]! V6 |- a& B2 `7 x% R
from datetime import datetime, timedelta
& {- @9 w' b# b: [2 e5 f$ ]- u9 I) |
d = datetime.today() - timedelta(days=5)( K c- e0 P! Q0 U4 u# [/ F
print(d)
8 e6 l6 {9 g2 i: {
! Q) m( ~/ {7 P4 k' v7 h7 h十七、比较两个日期6 S1 D" a8 N W) ]3 ]
import datetime
2 s, `7 e& Q& |: p: V
( W( j* W; L" R6 |' O4 Ma = datetime.datetime(2020, 12, 31, 23, 59, 59)
% P% x8 B- K2 L2 x" o9 ^$ A+ Cb = datetime.datetime(2020, 11, 30, 23, 59, 59)
8 p8 p/ V8 h0 \2 f/ {* x
Q6 G6 h ^; Q7 u4 Fprint(a < b)
8 m) G% @7 Y+ _4 Iprint(a > b)
3 e# c5 L+ M2 [
) u) S/ ^3 k0 v- O6 @) q0 ]+ P, o十八、从 datetime 对象中提取年份
7 u0 R- B# B1 Z8 zimport datetime6 \; Y: \; W1 _; ?& w6 ]; f
. ]: o! V$ H Q: }2 b( o3 Cyear = datetime.date.today().year
) R% R/ {, `; O0 x) _3 ~) M% m; ~9 sprint(year) q0 x6 c8 N4 [3 }5 n' J }
7 y+ d' D6 k) U$ X) f: ?十九、根据日期找到星期几
; p4 o+ N8 |% v5 {8 _5 rimport pendulum# ^+ M: }# R) B0 V4 M
1 y4 v3 R9 D0 ^3 r
dt = pendulum.parse('2021-05-18')( c% s+ }/ z3 y1 ]# S; m/ z
print(dt.day_of_week) # 2
# B. t! P; a7 q& E
1 b5 ] ]6 o y4 `5 y# g' u; vdt = pendulum.parse('2021-05-01')
8 \- d5 O" u! ?/ r0 e- kprint(dt.day_of_week) # 6
0 T/ X( g' W, R. ~9 A o7 T E
dt = pendulum.parse('2021-05-21')
# \- d+ d! M" I( p e$ |& A& Rprint(dt.day_of_week) # 5& F" Q' o1 P! Q) A/ w
, a$ {* L8 [- g! g6 f F6 p二十、从当前日期获取 7 天前的日期/ u! p X) {/ D/ \0 q+ b
from datetime import datetime, timedelta
* H$ k1 m+ G* {+ T. Q2 q
) A" {' d% S& ?7 q% U! k) |now = datetime.now()5 z1 u5 h1 l/ y' N1 p$ C. k4 v1 I
7 x ]4 I" o- E6 s8 } G4 d$ K, c! Bfor x in range(7):
- i& u8 ?5 K( S1 G9 g d = now - timedelta(days=x): H' _8 U3 ]( s2 a! d* ?
print(d.strftime("%Y-%m-%d"))
( O: ~# W1 A1 @5 e, d% w& w' @* c, ^% Z: b4 v
二十一、将两个日期时间对象之间的差值转换为秒
4 j$ U( e9 {! v0 _' a- |- _import datetime- {- Q& ^ l' ]: H3 t
, ^) |% W' _$ o5 r6 l Y g$ ^time1 = datetime.datetime.strptime('19 01 2021', '%d %m %Y')% O+ w+ ^9 b, q- z- r7 d
time2 = datetime.datetime.strptime('25 01 2021', '%d %m %Y')
# J/ s7 x% b- v( b8 X
- I' u9 F( {+ G4 Udifference = time2 - time18 N. H. G2 r0 l6 O
print(difference) # 6 days, 0:00:00
5 k" p6 z- `, j9 x4 h, S3 q0 `" q6 a# i5 u0 p
seconds = difference.total_seconds()
$ {; @4 r5 o- Iprint(seconds) # 518400.0
0 `- {* R+ d5 \
& @! T4 I1 e; P& A& Q. q' S二十二、获得任何一个月的第N个星期五
& R9 x+ t3 t$ W. ^import calendar
- C8 g: g6 l6 Z$ a8 d& [
$ ?; `4 ^% h; c" X9 l5 g# 取2021年5月的第三个星期五) O2 O7 u1 ~* S+ X+ _4 q+ d# {0 F5 N
c = calendar.Calendar(firstweekday=calendar.SUNDAY)
- ~, n, H% Z' iyear = 2021) O- n: m+ M2 Z; [! y& N
month = 5 Y7 J/ w- n. C( o7 s
n = 2 # 取第三个1 ^2 i, g$ P1 E! X3 N" `
monthcal = c.monthdatescalendar(year, month)1 G, m. v6 K, N; P4 S
! J* C" r( J5 \) W+ Otry: D c( b; B, M$ ^# L* d J, R: E
third_friday = [ h7 m H$ c4 A2 S
day for week in monthcal ; s7 {1 @% t1 _4 u' b8 \8 C$ ^
for day in week if
# G D) h" z% {$ B1 r1 K+ Q day.weekday() == calendar.FRIDAY and day.month == month
, W, o8 x4 c$ ^; w( T T3 ?. Z ][n]
) P d: ]/ \2 |6 J! l3 ~. ~ print(third_friday) # 2021-05-21
5 J9 n0 V9 m. L" l+ Aexcept IndexError:( Q% J3 r; e$ q
print('No date found')# n* H- C: g: o5 `* f7 T# Z
8 M/ S8 P. H, N/ f( d: R4 U4 f# a
二十三、根据周数获取日期$ @, v. \5 J, m* x1 ~% H
import datetime# ^/ X$ t4 E9 O, c
from dateutil.relativedelta import relativedelta
4 D/ j. P; {1 _- o0 {2 i4 ~- @& H I4 \, Y
week = 251 a! P6 s- O) Q: x
year = 2021$ ?5 C. L1 w- v3 _7 N' W7 g
date = datetime.date(year, 1, 1) + relativedelta(weeks=+week)
& ^3 {8 N% M# e0 F/ s' bprint(date) # 2021-06-25
: E1 x- W* X% Y+ Y5 ?4 D- J4 F2 m) c. e
二十四、获取特定日期的工作日' j6 N! |# W3 p _; @) i9 t
import datetime. v2 r p: Q1 o+ Y
B' G$ f4 p0 A2 e- kprint(datetime.date(2020, 5, 15).isocalendar()[2]) # 5; J" O) Q. q$ e, [! r y7 z) x; z
& c, t4 b: n' q! N, O) V0 ?二十五、创建一个 15 分钟前的 DateTime$ i* P8 X$ f3 E" v A$ p
import datetime
4 {* h3 K( ]! S1 @$ }& |#Python小白学习交流群:153708845 6 g' H4 ^0 q2 o0 |
dt = datetime.datetime.now() - datetime.timedelta(minutes=15)
; N1 l! C; `$ B) `5 w. A# n- Dprint(dt) # 2021-05-15 22:25:55.897365
3 i/ z' _8 D" p2 K8 i$ S
& ^# Q! _1 R3 ]% U二十六、从特定日期获取周的开始和结束日期# v5 J4 \: L$ H* c# C
import pendulum
, n4 a( \# X) b1 c+ X
8 a8 j- e' ?* d% fdt = pendulum.datetime(2012, 9, 5)) b4 o2 t# ~# q. F/ v
# b& t6 b# ^, b/ M" [/ Bstart = dt.start_of('week')
. q, W. y- g2 kprint(start.to_datetime_string()) # 2012-09-03 00:00:00
3 N6 x4 [$ l8 B. `4 q- v6 ]8 m: s1 _ m5 `$ H2 U
end = dt.end_of('week')
" p9 L0 u' {8 o Y' c4 {6 r4 aprint(end.to_datetime_string()) # 2012-09-09 23:59:59: v; ?, m/ \# H4 E" `
& p; c4 q% K: G# h: ?
二十七、两个日期之间的差异(以秒为单位)
. l+ x) p. F" x& Nfrom datetime import datetime9 I3 A! b" Q' l* c4 z- o* o7 N4 n" d
#Python小白学习交流群:153708845 ; ~4 b1 l$ C7 K$ P
fmt = '%Y-%m-%d %H:%M:%S'
5 ^5 w( A, w ld1 = datetime.strptime('2020-01-01 17:31:22', fmt)1 S- w- V6 Z5 W* v( n Z4 B
d2 = datetime.strptime('2020-01-03 17:31:22', fmt)
# x; Y6 Q; F: k) o a3 Z8 s% k2 B
4 }9 }7 Z; k6 |/ |& @% Bdays_diff = d2 - d1
) _6 x5 q3 y' Z+ |- A. \* Aprint(days_diff.days * 24 * 60 * 60) # 172800
2 s, R' g+ ]" x+ n$ N3 `4 W6 W0 D. r0 P6 S. \% ]9 P
二十八、以这种格式获取昨天的日期MMDDYY
0 e: a; m( W2 a8 m* R1 F6 @) Vfrom datetime import date, timedelta5 a" r; H4 y( K
; F4 M4 R5 ]5 U; W$ V5 d
yesterday = date.today() - timedelta(days=1)/ a- K$ x5 P) S
print(yesterday.strftime('%m%d%y')) # 051421
6 | ^' @; E+ g
6 O7 l8 `( p$ u2 S二十九、根据今天的日期获取上周三的日期
( n( G. B% X' n0 [! Nfrom datetime import date; x7 i$ g8 ?8 i9 L T
from datetime import timedelta
) X* B/ l' F: W3 p
) e+ }0 k* C* g( r5 rtoday = date.today()! K& b( X( b0 @$ y0 m
0 n& M8 R* r' N: J" p4 i
offset = (today.weekday() - 2) % 7
1 F) J5 E# V0 E8 A* V' hwednesday = today - timedelta(days=offset)
4 v8 L/ ]& S% R* T! l) l6 J+ hprint(wednesday) # 2021-05-128 F" Z/ Z, h; u$ ~8 R8 N" `! R
2 o) [ [. {& Q/ L: V+ ~" S5 x
三十、所有可用时区的列表打印
# v" J3 l0 b- z6 A" L, \import pytz& H' `6 ~. s& k# V/ A
% b( @ q+ ]' ^7 hfor i in pytz.all_timezones:
6 d7 o5 O" h$ d v5 H# w print(i)" t! y& K% I7 [1 \/ T
6 g! f8 d- a9 { v
U) p- j, u* r( d. T
; R! M5 F. o: W2 F3 Z) K |
zan
|