小编use*_*018的帖子

如何在Python3中将外部类和内部类的参数传递给具有相同对象的内部类?

下面的代码工作正常,我分别为外部类和内部类创建对象并传递参数

class Student:
    def __init__(self,name,rollno):
        self.name = name
        self.rollno = rollno
    def show(self):
        print(self.name,self.rollno)
        #self.lap.show()

    class Laptop: #inner class
        def __init__(self,brand,cpu'):
            self.brand = brand
            self.cpu = cpu
        def show(self):
            print(self.brand,self.cpu)
s1 = Student('Ram',21)
lap1 =s1.Laptop('Dell','i3')
lap1.show()
Run Code Online (Sandbox Code Playgroud)

在第二个代码中,我在外部(学生)类中创建了内部类(笔记本电脑)对象。那么,我们如何将参数传递给内部类呢?

class Student:
    def __init__(self,name,rollno):
        self.name = name
        self.rollno = rollno
        self.lap = self.Laptop()  #lap is the obj of a inner class

    def show(self):
        print(self.name,self.rollno)
        self.lap.show()  
Run Code Online (Sandbox Code Playgroud)

我尝试使用 self.lap = self.Laptop(brand,cpu),分配参数并以不同的方式传递参数,但没有一个对我有用。有什么办法可以让我传递论据吗?

python oop class inner-classes python-3.x

0
推荐指数
1
解决办法
2698
查看次数

标签 统计

class ×1

inner-classes ×1

oop ×1

python ×1

python-3.x ×1