2013-07-14 87 views
0

我有一个程序,到ini文件更新的信息,但是当我尝试这样做,我得到这个错误:蟒蛇配置文件错误

Exception in Tkinter callback 
Traceback (most recent call last): 
    File "C:\Program Files\Python33\lib\tkinter\__init__.py", line 1475, in __call__ 
    return self.func(*args) 
    File "C:\Users\Public\Documents\Programming\Math-Bot\Math-Bot.py", line 106, in check 
    config.write() 
TypeError: write() missing 1 required positional argument: 'fp' 

但我似乎无法找到我需要这样做,

这是我的代码写入配置文件:

user = 'default' 
config = configparser.ConfigParser() 
config.read('settings.ini') 
config[user]['wrong'] = str(int(config[user]['wrong']) + 1) 
config.write() 

,这是配置文件:

[default] 
wrong=0 

任何想法我真的需要帮助!

在此先感谢!

+0

什么是'config'对象? – falsetru

+0

我们需要查看代码的其余部分。什么是配置?我猜'fp'是一个文件指针。也许你忘了打开文件,或者你做了,但由于某种原因id失败? – Yotam

+0

我已更新它,所以我希望能给你一个想法 – Elxafil

回答

1

由于文件说:

write(fileobject, space_around_delimiters=True)

Write a representation of the configuration to the specified file object, which must be opened in text mode (accepting strings).

所以,你的问题是,你缺少从写入方法的文件对象参数:

config = configparser.ConfigParser() 
# do some configuration here 

with open('settings.ini', 'w') as settings: 
    config.write(settings) # write to a file