python类和对象的使用_Python类和对象的定义与实际应用案例分析

本文实例讲述了Python类和对象的定义与实际应用。分享给大家供大家参考,具体如下:

1.DVD管理系统

# -*- coding:utf-8 -*-

#! python3

class dvd:

def __init__(self,name,price,state):

self.name=name;

self.price=price

self.state=state

def __str__(self):

stat='已借出';

if self.state==1:

stat='未借出'

return '名称:《%s》 单价:%d 状态:%s'%(self.name,self.price,stat)

class DVDManager:

#存储 多个dvds 每一个元素 都是一个DVD

dvds=[] def init(self):

self.dvds.append(dvd('光辉岁月',10,0));

self.dvds.append(dvd('绅士', 5, 1));

self.dvds.append(dvd('海阔天空', 11, 1));

def Menu(self):

self.init()

while(True):

print('1.查询所有DVD')

print('2.增加DVD')

print('3.借出DVD')

print('4.归还DVD')

print('5.退出')

choose=int(input('请选择:'));

if choose==1:

self.showAllDVD();

elif choose==2:

self.insertDVD();

elif choose==3:

self.jiechuDVD();

elif choose==4:

self.rollBackDVD();

elif choose==5:

print('5.谢谢使用')

break;

def showAllDVD(self):

for d in self.dvds:

print(str(d))

def jiechuDVD(self):

name = input('请输入DVD的名称:')

ret = self.checkDVD(name);

if ret != None:

if ret.state==0:

print('dvd 已经借出去了')

#return;

else:

days=int(input('请输入借出天数:'))

ret.state = 0;

print('借出 %d 天,应还利息%d '%(days,ret.price*days))

else:

print('DVD 不存在!')

def rollBackDVD(self):

name = input('请输入归还DVD的名称:')

ret = self.checkDVD(name);

if ret == None:

print('DVD 不存在!')

else:

if ret.state == 1:

print('dvd 未借出!')

else:

days= int(input('请输入借出去了多少天?'))

y_money=ret.price * days

print('借出 %d 天,应还利息%d ' % (days, y_money))

money=0;

while True:

money= int(input('请输入金额:'))

#带学生完成..

if money

print('不够!')

else:

break;

if money>=y_money:

print('找零:%d'%(money-y_money));

ret.state=1;

print('归还成功!')

def insertDVD(self):

name = input('请输入DVD的名称:')

ret= self.checkDVD(name);

if ret != None:

print('DVD 已经存在!')

else:

price=int(input('请输入价格:'))

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值