summaryrefslogtreecommitdiff
path: root/ATRI/utils
diff options
context:
space:
mode:
authorKyomotoi <[email protected]>2023-01-18 00:40:50 +0800
committerKyomotoi <[email protected]>2023-01-18 00:40:50 +0800
commit296dbc555c2a64a1d912c6d60eed48e5d0cd609c (patch)
tree45fbf53775bbdadb8c84756af8ca628e8754ab6e /ATRI/utils
parent7c287eadc2ff30b7449e0cd50fee78f7636f3bd3 (diff)
downloadATRI-296dbc555c2a64a1d912c6d60eed48e5d0cd609c.tar.gz
ATRI-296dbc555c2a64a1d912c6d60eed48e5d0cd609c.tar.bz2
ATRI-296dbc555c2a64a1d912c6d60eed48e5d0cd609c.zip
🎨 移除对 pytz 的依赖
Diffstat (limited to 'ATRI/utils')
-rw-r--r--ATRI/utils/__init__.py21
1 files changed, 9 insertions, 12 deletions
diff --git a/ATRI/utils/__init__.py b/ATRI/utils/__init__.py
index 9ce3735..693de6c 100644
--- a/ATRI/utils/__init__.py
+++ b/ATRI/utils/__init__.py
@@ -1,7 +1,6 @@
import os
import re
import json
-import pytz
import string
import asyncio
import aiofiles
@@ -18,38 +17,36 @@ def gen_random_str(k: int) -> str:
class TimeDealer:
- def __init__(self, timestamp: float):
+ def __init__(self, timestamp: float, timezone):
"""对时间进行处理
Args:
- timestamp (int): _description_
+ timestamp (float): 时间戳
+ timezone (_type_): 时区 (datetime.timezone)
"""
self.timestamp = timestamp
+ self.timezone = timezone
def to_str(
- self, tz=pytz.timezone("Asia/Shanghai"), format: str = "%Y-%m-%d %H:%M:%S"
+ self, format: str = "%Y-%m-%d %H:%M:%S"
) -> str:
"""将时间戳转换为格式化形式
Args:
- tz: 时区. 默认: `pytz.timezone("Asia/Shanghai")`.
format: 时间格式. 默认: `"%Y-%m-%d %H:%M:%S"`.
Returns:
str: 格式化后的时间戳
"""
- return datetime.fromtimestamp(self.timestamp, tz).strftime(format)
+ return datetime.fromtimestamp(self.timestamp, self.timezone).strftime(format)
- def to_datetime(self, tz=pytz.timezone("Asia/Shanghai")) -> datetime:
+ def to_datetime(self) -> datetime:
"""将时间戳转化成 datetime 类型
- Args:
- tz: 时区. 默认: `pytz.timezone("Asia/Shanghai")`.
-
Returns:
datetime: 转换后的 datetime 类型
"""
- return datetime.fromtimestamp(self.timestamp, tz)
+ return datetime.fromtimestamp(self.timestamp, self.timezone)
def int_now(self) -> float:
"""将时间戳转换为一天中整数的时间.
@@ -58,7 +55,7 @@ class TimeDealer:
Returns:
float: 转换后的整数时间
"""
- time = datetime.fromtimestamp(self.timestamp)
+ time = datetime.fromtimestamp(self.timestamp, self.timezone)
return time.hour + time.minute / 60