问题标签 [configobj]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
10140 浏览

python - ConfigObj 或 ConfigParser 哪个更好?

哪个更适合为 Python 程序创建设置文件、内置模块 ( ConfigParser ) 或独立项目 ( ConfigObj )?

0 投票
1 回答
2566 浏览

python - 使用 configobj 逐一读取完整部分

我正在使用 configobj 读取配置文件,如下所示。

我的目标是先阅读部分列表,然后将每个部分放入字典中。如果没有值,我必须用默认值替换。说 section2 - PROP1 将变为“12345”。我一直在查看 configobj 以仅将一个部分读取到字典对象上,但看起来没有函数/方法可以做到这一点。有什么帮助吗?

谢谢

Umapathy

0 投票
1 回答
1422 浏览

python - py2exe 找不到模块

我有一个运行良好的 Python 应用程序。现在我使用 py2exe 创建此应用程序的 Windows 可执行文件,但是生成的 exe 失败并抱怨它缺少configobj模块

file2.py 中的第 10 行仅仅是from configobj import ConfigObj

我尝试通过指定-i configobj参数将 configobj 显式添加到打包模块列表中,但是 py2exe 运行失败并出现类似错误:

configobj 模块安装在我的计算机上的默认位置

我究竟做错了什么 ?

0 投票
2 回答
373 浏览

python - 这是共享动态 ConfigObj 文件的一种不错的方式吗?

我有几个 python 进程可以监视物理 IO 并对其采取行动。例如,如果电流过高,则关闭电机。他们需要让彼此知道他们为什么做了某事,所以我认为共享文件可能是一个简单的解决方案。各种进程可以写入这个文件,而其他进程需要知道它何时被写入。我已经将 ConfigObj 用于静态配置文件,所以我想尝试一下动态文件。写入不应该经常发生,可能最多每秒一次,并且通常这慢得多。我想出了这个似乎有效的例子。

我的问题是是否有更好/更容易/更清洁的方法来做到这一点?

0 投票
1 回答
1621 浏览

python - ConfigObj 长列表和默认值

我有几个关于 configobj 的问题,我很乐意将其用于这个项目。

第一个问题是,我如何列出很长的清单?假设我已经在规范文件中声明。

val = string_list

现在我想做 val = 一、二、三

但这是不允许的,而且

不起作用,有没有办法避免将所有内容写在一行上?

第二个问题是,如何避免声明两倍的默认值?

例如假设我有这个规范:

我理所当然地认为(前面的伪代码)

但事实并非如此,如果它没有在 conf 文件中声明它只是找不到密钥?当没有从规范中声明它们时,是否有一个神奇的选项可以让它创建密钥?

一种替代方法可能是改用 YAML,但据我所知,对于验证 ConfigObj 看起来更好。

0 投票
1 回答
944 浏览

python - python configObj可以处理没有'='的行吗

我使用 python ConfigObj 加载配置文件,如果配置文件模式为“cfgName=cfgvalue”,它会很好用。

现在我需要以这种方式编写配置文件:

篮子.ini

favoFruit['Apple','Orange']可以(如何)通过 ConfigObj将其加载为列表?

当前我只能Invalid line at line "2"在使用时收到错误消息cfgObj=ConfigObj('basket.ini')

YAML 或 JSON 可以做到这一点,我的问题是 ConfigObj 也可以做到吗?

0 投票
0 回答
528 浏览

python - Python:使用 ConfigObj 创建 .py 文件

我正在尝试使用 ConfigObj 创建一个 python .py 文件。

我面临的问题如下 -

  1. 如何使用 configObj 附加起始参数(类名、初始化语句)、导入语句等?
  2. 在 ConfigObj 中,我们可以使用节分隔符。如何使用注释作为部分名称?显然,.py 文件中的任何错误代码都不会运行。所以,我想使用注释作为部分标题来分隔事物。

以下是我尝试使用的 configspec 文件的代码 - (是的,我正在使用 OpenFlow) -

最后,当我运行此规范时,我的代码返回以下错误 -

显然,这意味着我无法创建正确的 configspec 来与 ConfigObj 一起运行。

我的 2 点问题的任何答案都会很棒!

0 投票
2 回答
1037 浏览

python - 获取 ConfigObj 以引用字符串

如果我运行以下脚本:

输出是:

有没有办法产生以下输出?

0 投票
2 回答
488 浏览

python - 为什么 **kwargs 不使用 python ConfigObj 进行插值?

我在 python 中使用带有模板样式插值的ConfigObj 。通过 ** 展开我的配置字典似乎并没有进行插值。这是功能还是错误?有什么好的解决方法吗?

我希望第二行是/test/directory. 为什么插值不适用于 **kwargs?

0 投票
1 回答
1616 浏览

python - 为 ConfigObj 和 Unicode 使用 StringIO

我正在尝试使用 StringIO 来提供 ConfigObj。我想在我的单元测试中这样做,以便我可以根据我想在配置对象中测试的内容即时模拟配置“文件”。

我在配置模块中处理了一大堆事情(我正在阅读几个 conf 文件,为其余的应用程序聚合和“格式化”信息)。但是,在测试中,我面临着来自hell的 unicode 错误。我想我已经将我的问题归结为最小的功能代码,为了这个问题的目的,我已经提取并过度简化了这些代码。

我正在执行以下操作:

它产生以下回溯:

我在 Linux 上使用 Python-2.7.2(32 位)。我的控制台和编辑器 (Kile) 的语言环境设置为 fr_FR.utf8。

我以为我可以做到这一点。

io.StringIO 文档中,我得到了这个:

StringIO 对象可以接受 Unicode 或 8 位字符串,但混合使用两者可能需要一些注意。

ConfigObj 文档中,我可以这样做:

:_

文件:无

您无需指定 infile。如果省略它,将创建一个空的 ConfigObj。infile 可以是:

“编码”:无

默认情况下,ConfigObj 不会将您传递的文件/字符串解码为 Unicode [8]。如果您希望您的配置文件为 Unicode(键和成员),您需要提供一个编码来解码文件。此编码也将用于在写入时对配置文件进行编码。

我的问题是它为什么会产生这个?从(简单的)Unicode处理中我还有什么不明白的?...

通过查看这个答案,我改变了:

到(预先导入编解码器模块):

为了摆脱可能包含的字节顺序标记,但这并没有帮助。

非常感谢

注意:如果我使用 StringIO.StringIO 而不是 io.StringIO,我有相同的回溯。