继承中的has a

# 姓名:东电小张
# 开发时间:2021/4/23 9:37
'''
知识点:
1.一个类中使用了另一个自定义类型(类)的对象
eg:student中使用了computer,books

2.类型
    系统类型
        str int float
        list dict tuple set
    自定义类型
        算是自定义的类,可以看成是一种类型,类比结构体
        s=Student()
'''
class Computer():
    def __init__(self, brand, price):
        self.brand = brand
        self.price = price

    def __str__(self):
        return self.brand + str(self.price)


class Book():
    def __init__(self, bname, author, store):
        self.bname = bname
        self.author = author
        self.store = store

    def __str__(self):
        return self.bname + self.author + str(self.store)


class Student():
    def __init__(self, name, computer, book):
        self.name = name
        self.computer = computer
        self.books = []
        self.books.append(book)  # 传入的book是一个对象,包括书名、作者和库存

    def borrow_book(self, book):
        for i in self.books:
            if i.bname == book:
                print('已经借过此书!')
                break
            else:
                print('借书成功!')
                self.books.append(book)
                break

    def show(self):
        print('学生姓名为:{}\n电脑信息为:{}'.format(self.name, self.computer))
        print('借书信息为:')
        for i in self.books:
            if type(i) is Book:
                print(i.bname)
            else:
                print(i)


com = Computer('惠普', 5000)
book1 = Book('老人与海', '海明威', 10)
stu = Student('张三', com, book1)
# book2 = Book('呐喊', '鲁迅', 20)
stu.borrow_book('老人与海')
print('-----------')
stu.show()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值