0

我的问题是我想为应用程序制作一个配置文件,但事情并不像接缝那么简单。所以我看过一个教程,其中一个配置文件包含宽度和高度,等号后面的值可以被检索并用于建立框架的大小。去过那里,做到了,一切正常。奇怪的是,这个接缝只适用于一些关键词,就像我在配置文件中使用的一样,还有一个名为 freq 的参数,它没有像使用宽度、高度参数那样检索它的值。

例如,如果我有一段这样的代码:

   self.cfg = wx.Config('myconf')
   wid = self.cfg.ReadInt('width')
   hei = self.cfg.ReadInt('height')
   freq = self.cfg.ReadInt('frequency')
   print wid, hei, freq

在 myconf 中的哪个位置

   width=400
   height=250
   frequency=3000 

所以它显示高度、宽度但不显示频率,至于频率它只给出 0,这发生在我在配置文件中使用的任何其他词。我猜测配置文件中只能使用某些关键字,因此在使用 wxPython 时可以识别它们。

如果是这样,我在哪里可以获得可以用于制作配置文件的那些键的列表?

4

3 回答 3

0

您可以做的是自己阅读这些行:

F = open('myconf', 'r')
for line in F.read().split('\n'):
    switchres = { 'frequency': print(line.split('=')[1]),
                            # add the rest
                            }
    switchres[line.split('=')[0]]
于 2012-09-16T17:39:37.820 回答
0

就个人而言,我建议使用Python 附带的ConfigParser或ConfigObj(我更喜欢它)。如果您尝试保存小部件属性/设置,那么您可能还想查看PersistenManager

于 2012-09-17T13:38:12.763 回答
0

wxPython 是 wxWidgets 的包装器(或绑定器),它是一个 C++ 库。

因此 wx.Config 或 wx.FileConfig 适用于没有特定方法处理这些类型的配置文件的 C++(仍然 wx.Config 旨在在平台之间移植)。

在 Python 中,您已经拥有 ConfigParser 模块,但请记住:

  • 一些 wxPython 类可以与 wx.Config 一起使用,例如 wx.FileHistory,
  • 如果您想使用特定于平台的方式来存储配置(如 Windows 中的注册表),请使用 wx.Config。
于 2015-05-20T08:24:01.817 回答