模块
(类来自 pyomo.common.config)
- class pyomo.common.config.Module(basePath=None, expandPath=None)[source]
基础类:
object模块的域验证器。
模块可以指定为模块对象、模块名称或模块文件的路径。如果通过路径指定,路径字符串具有与
Path类支持的相同路径扩展功能。请注意,通过文件路径导入的模块可能不会被识别为包的一部分,因此它们不应使用相对包导入(例如
from . import foo)。- Parameters:
basePath (None, str, ConfigValue) – 将添加到任何非绝对路径值前的基础路径。如果为None,则默认为
Path.BasePath。expandPath (bool) – 如果为True,则值将被扩展和规范化。如果为False,则值的字符串表示将保持不变。如果为None,expandPath将遵循
Path.SuppressPathExpansion的(否定)值。
示例
以下代码展示了指定模块的三种方式:通过文件名、通过模块名或通过模块对象。无论模块是如何指定的,配置中存储的都是一个模块对象。
from pyomo.common.config import ( ConfigDict, ConfigValue, Module ) config = ConfigDict() config.declare('my_module', ConfigValue( domain=Module(), )) # Set using file path config.my_module = '../../pyomo/common/tests/config_plugin.py' # Set using python module name, as a string config.my_module = 'os.path' # Set using an imported module object import os.path config.my_module = os.path
方法
__init__([basePath, expandPath])成员文档