|
|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
这是第37讲的课后作业,我稍微做了点改进
class Ticket():
def __init__(self,weekend=False,child=False):
self.exp = 100
if weekend:
self.inc = 1.2
else:
self.inc = 1
if child:
self.discount = 0.5
else:
self.discount = 1
def calcPrice(self,num):
return self.exp * self.inc * self.discount * num
adult = Ticket()
child = Ticket(child=True)
a = input('请输入成人人数:')
c = input('请输入儿童人数:')
print('总票价为:%.2f'%(adult.calcPrice(a) + child.calcPrice(c)))
错误代码:
Traceback (most recent call last):
File "C:/Users/keepenjoy/Desktop/票价.py", line 20, in <module>
print('总票价为:%d'%(adult.calcPrice(a) + child.calcPrice(c)))
File "C:/Users/keepenjoy/Desktop/票价.py", line 13, in calcPrice
return self.exp * self.inc * self.discount * num
TypeError: can't multiply sequence by non-int of type 'float'
>>>
源代码:
class Ticket():
def __init__(self, weekend=False, child=False):
self.exp = 100
if weekend:
self.inc = 1.2
else:
self.inc = 1
if child:
self.discount = 0.5
else:
self.discount = 1
def calcPrice(self, num):
return self.exp * self.inc * self.discount * num
>>> adult = Ticket()
>>> child = Ticket(child=True)
>>> print("2个成人 + 1个小孩平日票价为:%.2f" % (adult.calcPrice(2) + child.calcPrice(1)))
2个成人 + 1个小孩平日票价为:250.00
求解惑
谢米娜撒麻 |
|