ezKit 1.11.6__tar.gz → 1.11.8__tar.gz

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: ezKit
3
- Version: 1.11.6
3
+ Version: 1.11.8
4
4
  Summary: Easy Kit
5
5
  Author: septvean
6
6
  Author-email: septvean@gmail.com
@@ -1,6 +1,5 @@
1
1
  """Utils"""
2
2
  import csv
3
- import datetime
4
3
  import hashlib
5
4
  import json
6
5
  import os
@@ -9,6 +8,7 @@ import time
9
8
  import tomllib
10
9
  from concurrent.futures import ProcessPoolExecutor, ThreadPoolExecutor
11
10
  from copy import deepcopy
11
+ from datetime import date, datetime, timedelta, timezone
12
12
  from itertools import islice
13
13
  from pathlib import Path
14
14
  from shutil import rmtree
@@ -73,11 +73,11 @@ def check_arguments(data: list) -> bool:
73
73
 
74
74
  try:
75
75
  if not isTrue(data, list):
76
- logger.error("argument error: data")
76
+ logger.error(f"argument type error: data {type(data)}")
77
77
  return False
78
78
  for arg, arg_type, arg_name in data:
79
79
  if not isTrue(arg, arg_type):
80
- logger.error(f"argument error: {arg_name}")
80
+ logger.error(f"argument type error: {arg_name} {type(arg)}")
81
81
  return False
82
82
  return True
83
83
  except Exception as e:
@@ -806,20 +806,20 @@ def retry(func: Callable, times: int = 3, **kwargs) -> Any:
806
806
 
807
807
 
808
808
  def date_to_datetime(
809
- date_object: datetime.datetime
810
- ) -> datetime.datetime | None:
809
+ date_object: datetime
810
+ ) -> datetime | None:
811
811
  """'日期'转换为'日期时间'"""
812
812
  # https://stackoverflow.com/a/1937636
813
813
  try:
814
- return datetime.datetime.combine(date_object, datetime.datetime.min.time())
814
+ return datetime.combine(date_object, datetime.min.time())
815
815
  except Exception as e:
816
816
  logger.exception(e)
817
817
  return None
818
818
 
819
819
 
820
820
  def datetime_to_date(
821
- datetime_instance: datetime.datetime
822
- ) -> datetime.date | None:
821
+ datetime_instance: datetime
822
+ ) -> date | None:
823
823
  """'日期时间'转换为'日期'"""
824
824
  # https://stackoverflow.com/a/3743240
825
825
  try:
@@ -831,25 +831,25 @@ def datetime_to_date(
831
831
 
832
832
  def local_timezone():
833
833
  """获取当前时区"""
834
- return datetime.datetime.now(datetime.timezone.utc).astimezone().tzinfo
834
+ return datetime.now(timezone.utc).astimezone().tzinfo
835
835
 
836
836
 
837
- def datetime_now(**kwargs) -> datetime.datetime | None:
837
+ def datetime_now(**kwargs) -> datetime | None:
838
838
  """获取当前日期和时间"""
839
839
  utc = kwargs.pop("utc", False)
840
840
  try:
841
841
  if isTrue(utc, bool):
842
- return datetime.datetime.now(datetime.timezone.utc)
843
- return datetime.datetime.now(**kwargs)
842
+ return datetime.now(timezone.utc)
843
+ return datetime.now(**kwargs)
844
844
  except Exception as e:
845
845
  logger.exception(e)
846
846
  return None
847
847
 
848
848
 
849
849
  def datetime_offset(
850
- datetime_instance: datetime.datetime | None = None,
850
+ datetime_instance: datetime | None = None,
851
851
  **kwargs
852
- ) -> datetime.datetime | None:
852
+ ) -> datetime | None:
853
853
  """
854
854
  获取 '向前或向后特定日期时间' 的日期和时间
855
855
 
@@ -857,13 +857,13 @@ def datetime_offset(
857
857
  """
858
858
  _utc = kwargs.pop("utc", False)
859
859
  try:
860
- if isinstance(datetime_instance, datetime.datetime):
861
- return datetime_instance + datetime.timedelta(**kwargs)
860
+ if isinstance(datetime_instance, datetime):
861
+ return datetime_instance + timedelta(**kwargs)
862
862
 
863
863
  if _utc is True:
864
- return datetime.datetime.now(datetime.timezone.utc) + datetime.timedelta(**kwargs)
864
+ return datetime.now(timezone.utc) + timedelta(**kwargs)
865
865
 
866
- return datetime.datetime.now() + datetime.timedelta(**kwargs)
866
+ return datetime.now() + timedelta(**kwargs)
867
867
 
868
868
  except Exception as e:
869
869
  logger.exception(e)
@@ -871,21 +871,21 @@ def datetime_offset(
871
871
 
872
872
 
873
873
  def datetime_to_string(
874
- datetime_instance: datetime.datetime,
874
+ datetime_instance: datetime,
875
875
  string_format: str = '%Y-%m-%d %H:%M:%S'
876
876
  ) -> str | None:
877
877
  """'日期时间'转换为'字符串'"""
878
878
  try:
879
- if not isTrue(datetime_instance, datetime.datetime):
879
+ if not isTrue(datetime_instance, datetime):
880
880
  return None
881
- return datetime.datetime.strftime(datetime_instance, string_format)
881
+ return datetime.strftime(datetime_instance, string_format)
882
882
  except Exception as e:
883
883
  logger.exception(e)
884
884
  return None
885
885
 
886
886
 
887
887
  def datetime_to_timestamp(
888
- datetime_instance: datetime.datetime = datetime.datetime.now(),
888
+ datetime_instance: datetime,
889
889
  utc: bool = False
890
890
  ) -> int | None:
891
891
  """
@@ -894,43 +894,43 @@ def datetime_to_timestamp(
894
894
  UTC datetime 需要先替换 timezone 再转换为 Unix Timestamp
895
895
  """
896
896
  try:
897
- if not isTrue(datetime_instance, datetime.datetime):
897
+ if not isTrue(datetime_instance, datetime):
898
898
  return None
899
- return int(datetime_instance.replace(tzinfo=datetime.timezone.utc).timestamp()) if utc is True else int(datetime_instance.timestamp())
899
+ return int(datetime_instance.replace(tzinfo=timezone.utc).timestamp()) if utc is True else int(datetime_instance.timestamp())
900
900
  except Exception as e:
901
901
  logger.exception(e)
902
902
  return None
903
903
 
904
904
 
905
905
  def datetime_local_to_timezone(
906
- datetime_instance: datetime.datetime,
907
- tz: datetime.timezone = datetime.timezone.utc
908
- ) -> datetime.datetime | None:
906
+ datetime_instance: datetime,
907
+ tz: timezone = timezone.utc
908
+ ) -> datetime | None:
909
909
  """
910
910
  Local datetime to TimeZone datetime(默认转换为 UTC datetime)
911
911
  replace(tzinfo=None) 移除结尾的时区信息
912
912
  """
913
913
  try:
914
- if not isTrue(datetime_instance, datetime.datetime):
914
+ if not isTrue(datetime_instance, datetime):
915
915
  return None
916
- return (datetime.datetime.fromtimestamp(datetime_instance.timestamp(), tz=tz)).replace(tzinfo=None)
916
+ return (datetime.fromtimestamp(datetime_instance.timestamp(), tz=tz)).replace(tzinfo=None)
917
917
  except Exception as e:
918
918
  logger.exception(e)
919
919
  return None
920
920
 
921
921
 
922
922
  def datetime_utc_to_timezone(
923
- datetime_instance: datetime.datetime,
924
- tz: Any = datetime.datetime.now(datetime.timezone.utc).astimezone().tzinfo
925
- ) -> datetime.datetime | None:
923
+ datetime_instance: datetime,
924
+ tz: Any = datetime.now(timezone.utc).astimezone().tzinfo
925
+ ) -> datetime | None:
926
926
  """
927
927
  UTC datetime to TimeZone datetime(默认转换为 Local datetime)
928
928
  replace(tzinfo=None) 移除结尾的时区信息
929
929
  """
930
930
  try:
931
- if not isTrue(datetime_instance, datetime.datetime):
931
+ if not isTrue(datetime_instance, datetime):
932
932
  return None
933
- return datetime_instance.replace(tzinfo=datetime.timezone.utc).astimezone(tz).replace(tzinfo=None)
933
+ return datetime_instance.replace(tzinfo=timezone.utc).astimezone(tz).replace(tzinfo=None)
934
934
 
935
935
  except Exception as e:
936
936
  logger.exception(e)
@@ -939,13 +939,13 @@ def datetime_utc_to_timezone(
939
939
 
940
940
  def timestamp_to_datetime(
941
941
  timestamp: int,
942
- tz: datetime.timezone = datetime.timezone.utc
943
- ) -> datetime.datetime | None:
942
+ tz: timezone = timezone.utc
943
+ ) -> datetime | None:
944
944
  """Unix Timestamp 转换为 Datatime"""
945
945
  try:
946
946
  if not isTrue(timestamp, int):
947
947
  return None
948
- return (datetime.datetime.fromtimestamp(timestamp, tz=tz)).replace(tzinfo=None)
948
+ return (datetime.fromtimestamp(timestamp, tz=tz)).replace(tzinfo=None)
949
949
  except Exception as e:
950
950
  logger.exception(e)
951
951
  return None
@@ -954,12 +954,12 @@ def timestamp_to_datetime(
954
954
  def datetime_string_to_datetime(
955
955
  datetime_string: str,
956
956
  datetime_format: str = '%Y-%m-%d %H:%M:%S'
957
- ) -> datetime.datetime | None:
957
+ ) -> datetime | None:
958
958
  """datetime string to datetime"""
959
959
  try:
960
960
  if not isTrue(datetime_string, str):
961
961
  return None
962
- return datetime.datetime.strptime(datetime_string, datetime_format)
962
+ return datetime.strptime(datetime_string, datetime_format)
963
963
  except Exception as e:
964
964
  logger.exception(e)
965
965
  return None
@@ -980,7 +980,7 @@ def datetime_string_to_timestamp(
980
980
 
981
981
 
982
982
  def datetime_object(
983
- date_time: datetime.datetime
983
+ date_time: datetime
984
984
  ) -> dict | None:
985
985
  """datetime object"""
986
986
  try:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: ezKit
3
- Version: 1.11.6
3
+ Version: 1.11.8
4
4
  Summary: Easy Kit
5
5
  Author: septvean
6
6
  Author-email: septvean@gmail.com
@@ -3,7 +3,7 @@ from setuptools import find_packages, setup
3
3
 
4
4
  setup(
5
5
  name='ezKit',
6
- version='1.11.6',
6
+ version='1.11.8',
7
7
  author='septvean',
8
8
  author_email='septvean@gmail.com',
9
9
  description='Easy Kit',
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes