質問するログイン新規登録

回答編集履歴

1

timezone方式を追加

2021/10/04 13:08

投稿

ppaul
ppaul

スコア24672

answer CHANGED
@@ -7,4 +7,22 @@
7
7
  >>>
8
8
  >>> print((datetime.strptime(d_str, '%Y%m%d%H%M')+nine_hour).strftime("%y年%m月%d日%H時%M分"))
9
9
  21年10月05日21時20分
10
+ ```
11
+
12
+ timezoneを使うと、もう少し面倒です。
13
+
14
+ ```python
15
+ >>> from datetime import datetime, timedelta, timezone
16
+ >>>
17
+ >>> UTC = timezone.utc
18
+ >>> JST = timezone(timedelta(hours=+9), 'JST')
19
+ >>>
20
+ >>> dt_UTC = datetime.strptime(d_str, '%Y%m%d%H%M').replace(tzinfo=UTC)
21
+ >>>
22
+ >>> dt_UTC.astimezone(JST)
23
+ datetime.datetime(2021, 10, 5, 21, 20, tzinfo=datetime.timezone(datetime.timedelta(seconds=32400), 'JST'))
24
+ >>> dt_JST = dt_UTC.astimezone(JST)
25
+ >>> dt_JST.strftime("%y年%m月%d日%H時%M分")
26
+ '21年10月05日21時20分'
27
+
10
28
  ```