Difficult-Rocket/bin/configs.py

47 lines
1.2 KiB
Python
Raw Normal View History

2020-12-31 23:13:11 +08:00
"""
writen by shenjackyuanjie
mail: 3695888@qq.com
"""
2021-01-25 19:23:16 +08:00
import re
2021-01-26 08:06:36 +08:00
import bin
import time
2021-01-27 10:32:25 +08:00
import json5
2021-01-26 08:06:36 +08:00
import decimal
2021-01-25 19:23:16 +08:00
2021-01-26 08:06:36 +08:00
def basic_number(int_num=0, float_num=1, unit1=None, unit2=None) -> list:
2021-01-25 19:23:16 +08:00
if unit1 is None:
unit1 = []
2021-01-26 08:06:36 +08:00
if unit2 is None:
unit2 = []
2021-01-27 10:32:25 +08:00
if bin.tools.is_decimal(float_num): # is decimal class?
return [int_num, float_num, unit1, unit2] # is just return
2021-01-26 08:06:36 +08:00
else:
2021-01-27 10:32:25 +08:00
return [int_num, decimal.Decimal(str(float_num)), unit1, unit2] # no create a decimal class
2020-12-31 23:13:11 +08:00
2021-01-25 19:23:16 +08:00
def basic_force() -> list:
2020-12-31 23:13:11 +08:00
return [basic_number(unit1=["N"]), basic_number(unit1=["N"])]
2021-01-01 11:02:44 +08:00
2021-01-27 10:32:25 +08:00
def configs(name, option=None) -> dict:
with open(name, 'r') as file:
data = json5.load(file)
if option:
try:
data = data[option]
except:
print(Exception)
raise Exception
2021-01-25 19:23:16 +08:00
2021-01-26 08:06:36 +08:00
def name_handler(name: str, configs: dict = None) -> str:
if configs is None:
return name
for need_replace in configs:
2021-01-27 10:32:25 +08:00
if need_replace == '{date}': # special replace
2021-01-26 08:06:36 +08:00
replace = time.strftime(configs[need_replace], time.gmtime(time.time()))
name.replace(need_replace, replace)
name.replace(need_replace, configs[need_replace])