Python实例教程——用面向对象思想组装电脑

Python学习面向对象,对着视频教程写了这段代码,通过大家容易理解的装电脑的例子,体会Python面向对象编程,后期会根据学习情况不断完善重构代码,和添加注释,大家可以先复制运行,不断调试、理解。 

class CPU(object):
    """
    CPU类
    """
    def _init_(self, brand, core, interface):
        self.brand = brand
        self.core = core
        self.interface = interface


class RAM(object):
    """
    内存类
    """
    def _init_(self, brand, size):
        self.brand = brand
        self.size = size


class Disk(object):
    """
    硬盘类
    """
    def _init_(self, brand, size):
        self.brand = brand
        self.size = size


class Computer(object):
    """
    电脑类
    """
    def _init_(self, cpu_interface, ram_count, disk_count):
        self.cpu_interface = cpu_interface
        self.ram_count = ram_count
        self.disk_count = disk_count
        #以下三个属性是私有的,因为组装进去了,就不要随便动了
        self._cpu = None
        self._rams = []
        self._disks = []

    def add_cpu(self,cpu):
        if cpu.interface == self.cup_interface:
            self._cpu = cpu
        else:
            print('cpu型号不对,不能安装')

    def add_ram(self,ram):
        if len(self._rams) == self.ram_count:
            print('内存条已经没有位置')
        else:
            self._rams.append(ram)

    def add_disk(self,disk):
        if len(self._disks) == self.disk_count:
            print('硬盘已经没有位置安装了')
        else:
            self._disks.append(disk)

    def run(self):
        if not self.cup:
            print('没有cpu,电脑不能正常运行')
            return
        elif len(self._rams) == 0 or len(self._rams) > self.ram_count:
            print('内存条安装失败,电脑不能正常运行')
            return
        elif len(self._disks) == 0 or len(self._disks) > self.disk_count:
            print('硬盘安装失败,电脑不能正常运行')
            return
        else:
            print('所有配件都按照完毕,电脑正常启动........')


def main():
    # 初始化一台电脑
    computer = Computer('11211', 2, 2)

    # 初始化一个cpu
    cpu = CPU('intel', 4, '11211')

    # 创建两个内存条
    ram1 = RAM('jinshidun', '4G')
    ram2 = RAM('jinshidun', '4G')

    # 创建两个硬盘
    disk1 = Disk('jinshidun', '256G')
    disk2 = Disk('jinshidun', '256G')

    # 组装cpu
    computer.add_cpu(cpu)

    # 组装内存条
    computer.add_ram(ram1)
    computer.add_ram(ram2)

    computer.add_disk(disk1)
    computer.add_disk(disk2)


    # 让电脑跑起来
    computer.run()


if __name__ == '_main_':
    main()

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值