chore: 添加虚拟环境到仓库
- 添加 backend_service/venv 虚拟环境 - 包含所有Python依赖包 - 注意:虚拟环境约393MB,包含12655个文件
This commit is contained in:
@@ -0,0 +1,67 @@
|
||||
"""Configuration utilities for polynomial manipulation algorithms. """
|
||||
|
||||
|
||||
from contextlib import contextmanager
|
||||
|
||||
_default_config = {
|
||||
'USE_COLLINS_RESULTANT': False,
|
||||
'USE_SIMPLIFY_GCD': True,
|
||||
'USE_HEU_GCD': True,
|
||||
|
||||
'USE_IRREDUCIBLE_IN_FACTOR': False,
|
||||
'USE_CYCLOTOMIC_FACTOR': True,
|
||||
|
||||
'EEZ_RESTART_IF_NEEDED': True,
|
||||
'EEZ_NUMBER_OF_CONFIGS': 3,
|
||||
'EEZ_NUMBER_OF_TRIES': 5,
|
||||
'EEZ_MODULUS_STEP': 2,
|
||||
|
||||
'GF_IRRED_METHOD': 'rabin',
|
||||
'GF_FACTOR_METHOD': 'zassenhaus',
|
||||
|
||||
'GROEBNER': 'buchberger',
|
||||
}
|
||||
|
||||
_current_config = {}
|
||||
|
||||
@contextmanager
|
||||
def using(**kwargs):
|
||||
for k, v in kwargs.items():
|
||||
setup(k, v)
|
||||
|
||||
yield
|
||||
|
||||
for k in kwargs.keys():
|
||||
setup(k)
|
||||
|
||||
def setup(key, value=None):
|
||||
"""Assign a value to (or reset) a configuration item. """
|
||||
key = key.upper()
|
||||
|
||||
if value is not None:
|
||||
_current_config[key] = value
|
||||
else:
|
||||
_current_config[key] = _default_config[key]
|
||||
|
||||
|
||||
def query(key):
|
||||
"""Ask for a value of the given configuration item. """
|
||||
return _current_config.get(key.upper(), None)
|
||||
|
||||
|
||||
def configure():
|
||||
"""Initialized configuration of polys module. """
|
||||
from os import getenv
|
||||
|
||||
for key, default in _default_config.items():
|
||||
value = getenv('SYMPY_' + key)
|
||||
|
||||
if value is not None:
|
||||
try:
|
||||
_current_config[key] = eval(value)
|
||||
except NameError:
|
||||
_current_config[key] = value
|
||||
else:
|
||||
_current_config[key] = default
|
||||
|
||||
configure()
|
||||
Reference in New Issue
Block a user