亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

當我嘗試將列表傳遞給我的類屬性時發生錯誤

當我嘗試將列表傳遞給我的類屬性時發生錯誤

翻閱古今 2023-01-04 16:19:00
我正在嘗試使用類方法將列表傳遞給我的類屬性:class BASE_MODEL(object):    def __init__(self, train_data, train_labels, val_data, val_labels):        self.train_data, self.train_labels, self.val_data, self.val_labels = \            train_data, train_labels, val_data, val_labels    @classmethod    def list_to_data(cls, data_list):        train_data, train_labels, val_data, val_labels = data_list        data = cls(train_data, train_labels, val_data, val_labels)        return dataclass Fine_Tune_Model(BASE_MODEL):    def __init__(self, fine_tune_at=None):        super(BASE_MODEL, self).__init__()        self.fine_tune_at = fine_tune_atfine_tune_model = Fine_Tune_Model.list_to_data(data_lsit)這對超類很好用。但是,當我嘗試將相同的函數傳遞給子類時,會發生錯誤:Traceback (most recent call last):  File "E:/Studium/Thesis/Fine_Tuning.py", line 138, in <module>    main()  File "E:/Studium/Thesis/Fine_Tuning.py", line 133, in main    fine_tune_model = Fine_Tune_Model.list_to_data(create_data.split_data(3000, 200))  File "E:\Studium\Thesis\Train.py", line 32, in list_to_data    data = cls(train_data, train_labels, val_data, val_labels)TypeError: __init__() takes from 1 to 2 positional arguments but 5 were givenProcess finished with exit code 1是因為我的子類中多了一個參數“fine_tune_at”嗎?如果是這樣,我該如何避免這個問題?
查看完整描述

1 回答

?
MMTTMM

TA貢獻1869條經驗 獲得超4個贊

我發現問題出在哪里:


class BASE_MODEL(object):

    def __init__(self, train_data, train_labels, val_data, val_labels):

        self.train_data, self.train_labels, self.val_data, self.val_labels = \

            train_data, train_labels, val_data, val_labels


    @classmethod

    def list_to_data(cls, data_list):

        train_data, train_labels, val_data, val_labels = data_list

        data = cls(train_data, train_labels, val_data, val_labels)

        return data


class Fine_Tune_Model(BASE_MODEL):

    def __init__(self, train_data, train_labels, val_data, val_labels):

        super(Fine_Tune_Model, self).__init__(train_data, train_labels, val_data, val_labels)

        self.fine_tune_at = fine_tune_at


fine_tune_model = Fine_Tune_Model.list_to_data(data_lsit)

我沒有正確繼承超類中的屬性。


查看完整回答
反對 回復 2023-01-04
  • 1 回答
  • 0 關注
  • 96 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號