파이썬에서 ** (이중 별) 구문을 사용하는 객체를 만들 때 추가 인수를 전달하는 방법은 무엇입니까?

alwbtc

아래에 개체를 page_name만들 때 추가 인수 " "를 어떻게 전달 NotebookPage합니까? 아래 오류가 발생합니다.

class NotebookPage(wx.Panel):

    def __init__(self, *args, **kwargs):
        wx.Panel.__init__(self, *args, **kwargs)


NotebookPage(self, name='NotebookPage0', page_name=page)


TypeError: 'page_name' is an invalid keyword argument for this function

개체를 page_name만들 때 인수 를 전달해야 NotebookPage합니다. 그러나 page_name의 유효한 인수가 아니기 때문에 wx.Panel그 오류가 발생합니다.

ndpu

kwargs를 호출하기 전에 에서 추가 인수를 제거해야합니다 __init__. 예를 들어 dict pop메서드를 사용하는 경우 :

class NotebookPage(wx.Panel):
    def __init__(self, *args, **kwargs):
        page_name = kwargs.pop('page_name', None)
        wx.Panel.__init__(self, *args, **kwargs)
        if page_name:
            # somehow using page_name here

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

Related 관련 기사

뜨겁다태그

보관