Python ConfigParser.write()缺少1个必需的位置参数'fp'?

问题描述 投票:0回答:1

这里的代码(省略了无关的Kivy内容):

from kivy.app import App
from kivy.core.window import Window
from kivy.uix.widget import Widget
from configparser import ConfigParser
import os

class MIDIApp(App):
    def build(self):
        self.config = ConfigParser()
        self.config.read('values.ini')
        Window.size = Window.size
        return MainWindow()

    def input1_comp_move(self, value):
            print(int(value))

    def input1_save_comp_value(self, value):
        self.config['Input1']['comp'] = str(value)
        print(str(value))
        with open('values.ini', 'w') as config_file:
            ConfigParser.write(config_file)
        print('Input1 comp value is ', value)

class MainWindow(Widget):
    pass

if __name__ == '__main__':
    MIDIApp().run()

[运行此命令时出现错误ConfigParser.write(self.config_file) TypeError: write() missing 1 required positional argument: 'fp'

并且当我通过将其保留为空白进行调试时,它需要2个位置参数'self''filename',当我尝试使用另一个程序时,它并不需要。我想念什么?

python-3.x configparser
1个回答
0
投票
应该是self.config.write(self.config_file),或者,如果您坚持要这样做,ConfigParser.write(self.config,self.config_file)

感谢ForceBru

© www.soinside.com 2019 - 2024. All rights reserved.