Skip to main content
 首页 » 编程设计

python之缩短重复的 Python 代码

2025年05月04日14shanyou

我目前正在进行类实践评估,我想知道是否可以使用某种循环来缩短我的代码?

BASIC=500 
accident_price = 0 
total_price=0 
total_price+=BASIC 
age=float(input("what is your age?")) 
accidents=int(input("How many accidents have you had?")) 
for i in range(1): 
  if age < 25: 
    total_price=total_price+100 
    print("Peole under 25 pay extra 100$") 
  if accidents == 1: 
    total_price+=50 
    break 
  elif accidents == 2: 
    total_price+=125 
    break 
  elif accidents==3: 
    total_price+=225 
    break 
  elif accidents == 4: 
    total_price+=375 
    break 
  elif accidents == 5: 
    total_price+=500 
    break 
  elif accidents == 0: 
    print("No extra charge!") 
    break 
if accidents > 5: 
  print("No insurance!") 
  total_price=0 
if accidents < 6: 
  print("Your total comes to: ${}".format(total_price)) 

请您参考如下方法:

你可以为意外创建一个字典,比如

accident_bonus = {1: 50, 2: 125, 3: 225, 4: 375, 5: 500} 

你的代码可以没有 elif 系列,并且变成这样:

if accidents in accident_bonus: 
    total_price += accident_bonus[accidents] 
elif accidents > 5: 
    print("No insurance!") 
else: 
    print("No extra charge!") 

还有,EV。库尼斯是对的。为什么 for i in range(1)?这不是一个循环...