我正在尝试使用MCVE,并且在创建工作区时需要使用ConfigParser
实例。我尝试如下:
from cubes import Workspace
import ConfigParser
configg = ConfigParser.ConfigParser()
print configg
print type(configg)
configg.read('slicer.ini')
workspace = Workspace(config=configg)
以下是输出:
<ConfigParser.ConfigParser instance at 0x0387F148>
Traceback (most recent call last):
<type 'instance'>
File "C:/Users/saiki/PycharmProjects/bcubes2/b_cubes.py", line 8, in <module>
workspace = Workspace(config=configg)
File "build\bdist.win32\egg\cubes\workspace.py", line 83, in __init__
cubes.errors.ConfigurationError: config should be a ConfigParser instance, but is <type 'instance'>
我该如何解决这个问题?
答案 0 :(得分:1)
变化:
import ConfigParser
为:
from cubes.compat import ConfigParser
并制作一个实例:
configg = ConfigParser().
cubes
库使用兼容性模块使其适用于Python 2和3.它执行以下操作:
if py3k:
# ...
from configparser import ConfigParser
# ...
else:
from ConfigParser import SafeConfigParser as ConfigParser
# ...
因此,如果您使用的是Python 2,那么您需要一个SafeConfigParser
实例。
更简单:只需使用cubes.compat.ConfigParser
。
更好:切换到Python 3. :)