曼查克 发表于 2021-3-12 11:19:43

有个报错,度娘没给出合适的,请大佬帮忙看看

代码如下:
class A:
        def __init__(self):
               
                ...
               
                self.ui.timeEdit_1.timeChanged.connect(partial(self.show_time1))
               
        def show_time1(self):
                self.cfg['period'] = self.ui.lineEdit_time1.text() + ' ' + self.ui.timeEdit_1.time().toString('hh:mm:ss')

报错:
TypeError: show_time1() takes 1 positional argument but 2 were given

请指点!

曼查克 发表于 2021-3-12 11:42:59

终于找到办法了:

def show_time1(self):
修改为:
def show_time1(self, event = None):

洋洋痒 发表于 2021-3-12 11:43:34

代码写全点啊,我看的一脸懵逼,是不是你在实例的时候调用show_time1()的时候带参数了

曼查克 发表于 2021-3-12 11:48:57

洋洋痒 发表于 2021-3-12 11:43
代码写全点啊,我看的一脸懵逼,是不是你在实例的时候调用show_time1()的时候带参数了

不好意思,这是相关的代码,无关的有点多就没贴上来,也方便大家看。
问题已经查到解决办法了。
大致的解释是:实际调用方法的时候会自动传入一个参数,而定义方法的时候没有设置参数,所以会报错(当然在这里这个参数在方法内部并没有使用到)。只要在定义的时候给个位置,让它把参数传进来就好啦!

感谢关注!
页: [1]
查看完整版本: 有个报错,度娘没给出合适的,请大佬帮忙看看