簡體   English   中英

將數據附加到python中的構造函數空列表變量

[英]append data to constructor empty list variable in python

我有一節課。 為此,我想將數據附加到構造函數空列表變量。 我正在嘗試附加數據。 但它不起作用並拋出錯誤,因為“NameError: name 'items' is not defined”。 在此代碼工作之前。

這是我的代碼片段:

class data:
    def __init__(self,items=[]):
        self.items = items
        self.m1(n)
    def m1(self,n):
        self.n=2
        for i in range(self.n):
            d = input('enter the values :')
            self.items.append(d)
        print(self.items)
d=data(items)

這里有一些錯誤的問題:

1.) 在第 11 行,在嘗試初始化類之前沒有在任何地方定義 items,因此您在調用時最終會收到錯誤

 d=data(items)

2.) 在第 4 行,n 沒有定義。 它既不是作為參數與構造函數一起傳入,也不是在構造函數塊中的其他地方定義。 您將需要定義 n。

這是一個工作版本,所有變量都正確定義:

class data:
    def __init__(self, n, items=[]):
        self.items = items
        self.m1(n)

    def m1(self, n):
        self.n=2
        for i in range(self.n):
            d = input('enter the values :')
            self.items.append(d)
        print(self.items)

items = [1, 5, 7]
d = data(2, items)
class data:
def __init__(self,number,name,list_values=[]):
    self.number = int(input('Enter a number :'))
    self.name = name
    self.list_values = list_values
    self.m1()
def m1(self):
    for i in range(self.number):
        items = input('Enter the values :')
        self.list_values.append(items)
    print(self.list_values)
list_values= None
d=data('siddarth',list_values)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM