使用python

时间:2016-07-14 09:21:09

标签: python python-2.7 configparser

我有一个包含多个配置的conf文件,我需要自动解析信息,以便创建一个易于使用的界面。

我举一个配置中的一个部分的例子:

[OutOfHoursAlert]
comment_max_hour = Max Hour
max_hour = 20
comment_min_hour = Min Hour
min_hour = 8
comment_freq = Frequency of Plugin Executation
frequency = 10

目标是阅读所有部分(这没关系,我只是轻松地做到了)

然后我不知道该怎么做的难点是在我的终端界面上显示评论,以及更改评论下方选项的选项。

像这样:

Menu to configure OutOfHoursAlert
  Max Hour (read from comment) : (then show the field to edit, in this case max_hour)
  Min Hour (read from comment) : (then show the field to edit, in this case min_hour)
  FRequency of PLugin Executation (read from comment) : (then show the field to edit, in this case frequency)

阅读所有插件我写了这个简单的代码: 导入ConfigParser

import plugnplay
from plugins.PluginAlert import PluginAlerter

plugnplay.plugin_dirs = ['./plugins']
plugnplay.load_plugins()
plugins = PluginAlerter.implementors()

templist = []

for x in plugins:
    temp = str(x).split('.')
    templist.append(temp[1])

config = ConfigParser.ConfigParser()
config.readfp(open('./conf.ini'))

for x in templist:
    print "\nThe Configurations for plugin "+x+" are:\n"
    print dict(config.items(x))

惠特这个我创建了一个包含我想要的所有部分的字典,但我喜欢这样做,就像我以前告诉过的,有什么方法可以做到这一点吗?任何提示?感谢

1 个答案:

答案 0 :(得分:0)

您可以使用new_value = input(comment+": ")从用户处获取新值。

如果要构建一个允许实际编辑变量的高级控制台程序,移动光标等,您可能需要查看python标准库的curses模块。