神圣,python-ex.config在一个文件和

神圣,python-ex.config在一个文件和,python,python-sacred,Python,Python Sacred,所以我一直在用神圣的东西四处走动,看起来很棒。不幸的是,我没有找到任何像我尝试实现的多文件用例示例 因此,我有一个名为configuration.py的文件,它旨在包含不同的变量,这些变量将(使用神圣)插入到代码的其余部分(放在不同的文件中): 这本身就很有效。圣洁公司正在按预期工作。但是,当我尝试引入第二个名为Analysis.py的文件时: import configuration from sacred import Experiment ex = Experiment('Analysis

所以我一直在用神圣的东西四处走动,看起来很棒。不幸的是,我没有找到任何像我尝试实现的多文件用例示例

因此,我有一个名为configuration.py的文件,它旨在包含不同的变量,这些变量将(使用神圣)插入到代码的其余部分(放在不同的文件中):

这本身就很有效。圣洁公司正在按预期工作。但是,当我尝试引入第二个名为Analysis.py的文件时:

import configuration
from sacred import Experiment
ex = Experiment('Analysis')

@ex.capture
def what_is_love(generic_name):
    message = " I don't know"
    print(message)
    print(generic_name)

@ex.automain
def my_main1():
    what_is_love()
运行Analysis.py生成:

错误:

TypeError:what_is_love缺少['generic_name'的值]

我希望“import configuration”语句包含configuration.py文件,从而导入其中配置的所有内容,包括configure_analysis_default()及其decorator@ex.config,然后将其注入到what_is_love(generic_name)。 我做错了什么?我怎样才能解决这个问题


谢谢你

所以,很愚蠢,但我会把它贴在这里,以支持任何有类似问题的人

我的问题是,我创建了一个不同的实验实例。我只需要从配置文件导入我的实验

替换此:

import configuration
from sacred import Experiment
ex = Experiment('Analysis')
为此:

import configuration
ex = configuration.ex

所以,很愚蠢,但我会把它贴在这里,以支持任何有类似问题的人

我的问题是,我创建了一个不同的实验实例。我只需要从配置文件导入我的实验

替换此:

import configuration
from sacred import Experiment
ex = Experiment('Analysis')
为此:

import configuration
ex = configuration.ex

看起来我们应该用原料来做这类事情

但我还没完全弄明白

我在设置中遇到了一个循环导入问题,所以我使用了一个单独的文件exp.py,该文件只声明

from sacred import Experiment
ex = Experiment("default")
在包中的每个文件中

从exp导入ex

而且decorators和配置变量传递似乎也能工作。我可以在命令行上使用--name:


$>python main.py--name newname

看起来我们应该为这类事情使用成分

但我还没完全弄明白

我在设置中遇到了一个循环导入问题,所以我使用了一个单独的文件exp.py,该文件只声明

from sacred import Experiment
ex = Experiment("default")
在包中的每个文件中

从exp导入ex

而且decorators和配置变量传递似乎也能工作。我可以在命令行上使用--name:


$>python main.py--name newname

每当您可能在多个项目中相对频繁地使用原子操作而不是复制粘贴代码时,组件都是某种“函数”。。。看看这里:这是一个完美的方式做到这一点!IMHO成分是一种“函数”,当您可能在多个项目中相对频繁地使用原子操作而不是复制粘贴代码时。。。看看这里:这是一个完美的方式做到这一点!