我目前正在做一个简单的脚本练习,根据用户输入计算汽车保险。我想通过在脚本中实现类来更进一步。我试着看了一些视频和指南,但我不完全理解这个概念。你知道吗
有人能给我指出正确的方向吗?你知道吗
其目的是将当前脚本转换为一个名为Quote的类,该类反过来计算汽车保险。你知道吗
print("Hello")
print("Please enter your car insurance details:")
carMake = str(input("Enter your car make: "))
carModel = str(input("Enter your car model: "))
carType = str(input("Is your car type \"Sport\" or \"Family: \""))
engineSize = float(input("Enter your engine size in litres: "))
yearsClaimFree = int(input("Enter Years you have been claim free: "))
startingRate = 300
if engineSize >= 2.0:
startingRate = startingRate * 2.5
elif engineSize >= 1.4:
startingRate = startingRate * 1.5
else:
print("Engine size is not effecting car insurance quote.")
if carType == "sport":
startingRate = startingRate + 400
else:
print("Car type is not effecting the car insurance quote.")
if yearsClaimFree >= 10:
startingRate = startingRate - startingRate / 5
else:
print("No discount gained from years claimed free.")
print("Your car insurance is €" + str(startingRate))
您的类基本上应该是一些用于生成报价的参数的包装器。(作为一个简单的函数,它可能更合适,但我们将在这里使用它。)所有用户输入都将保持当前的方式,但速率的计算将在一个方法中完成。您将使用这个类,如下所示;我把实现这个类作为一个练习。你知道吗
(是否定义
generate_quote
采用品牌和型号取决于您自己; 当前脚本中没有使用它,但是Quote
可能有其他方法 会利用这些信息。或者,启动速率可能是品牌和型号的函数,而不是单个参数。)在我看来,您所需要的只是一个函数,它接受
carMake
、carModel
、carType
等,然后包含所有这些if
语句。如果您想输入有关汽车的所有数据,然后用相同的数据调用多个不同的函数,那么类将非常有用。你知道吗下面是如何使用函数:
现在,如果您希望有更多的函数使用关于同一辆车的相同数据(
make
、model
、type
、engineSize
、yearsClaimFree
和startingRate
),那么类可能很有用。你知道吗如果你有更多的功能,你想做的汽车,你可以调用他们与相同的数据,这辆车只是通过使用
这就是使用类派上用场的地方。你知道吗
我理解你的问题,我会给你上课的样子
在处理许多参数时,请查看kwargs or args。你知道吗
Python类可能有点混乱,我花了一段时间才真正理解它们,有大量的Python OOP教程
相关问题 更多 >
编程相关推荐