首页 > 解决方案 > 使用 If 和 Elif 修复

问题描述

代码:

import random

print('hello, pls give me ur wish and me will tell how many % it will happen.')
wish = input()

percentage = random.randint(1, 100)
print('ok, ' + wish + ', let us see.....')

print(percentage,"% that you is")

if (percentage <= 75) :
  boop = "wow is very high for happen"
elif (percentage <= 50) :
  boop = "hmmm, is will happen maybe"
elif (percentage <= 25) :
  boop = "low chance of happen, is will might no happen"
elif (percentage <= 1) :
  boop = "very low, wish u lucc"
elif (percentage == 0) :
  boop = "too bad so sad, is no happen"
print(boop)

我尝试运行代码,它可以工作,但结果不是我所期望的:

I want to fly.
ok, I want to fly., let us see.....
28 % that you is
wow is very high for happen
>>> 

百分比是 28%,它应该说“发生的可能性很小,可能不会发生”,而是说“哇发生的几率非常高”。如果有人可以帮助我,请做。

标签: pythonif-statementrandombooleanpercentage

解决方案


将您<=if,elif语句替换为>=. 这样,按照您的陈述的顺序,它将在列表中进行比较,并且始终属于正确的类别。


推荐阅读