首页 > 解决方案 > 为什么我的函数和打印语句不起作用

问题描述

当松鼠聚在一起参加聚会时,它们喜欢抽雪茄。

当雪茄数量在 40 到 60 支(含)之间时,松鼠派对就成功了,除非是周末,雪茄的数量没有上限。

编写一个函数 cigar_party() 来确定聚会是否成功。

该函数必须接收雪茄数量的整数值以及指示周末的整数值作为参数。然后,该函数必须确定它是否是成功方,并向主程序中的调用语句返回真 (1) 或假 (0) 值(成功为真,不成功为假)。

通过要求用户输入雪茄的数量并指出是否是周末来完成 Python 程序。之后,程序必须使用用户输入的值调用 cigar_party() 函数。

这就是我所做的:

cigars=int(input("Enter the number of cigars: "))
is_weekend=int(input("Is it weekend? 1=True, 0=False: "))

def cigar_party(cigars, is_weekend):
  if is_weekend and cigars >= 40:
      return True
      print("Yes! It was a successful cigar party!!!")
  elif cigars >= 40 and cigars <= 60:
      return True
      print("Yes! It was a successful cigar party!!!")
  else:
    return False
print("No, it was a disappointing cigar party...)

标签: pythonif-statementconditional-statements

解决方案


return语句应始终位于末尾,因为它是函数的终止。您还必须调用一个函数,而不仅仅是定义它。

cigars=int(input("Enter the number of cigars: "))
is_weekend=int(input("Is it weekend? 1=True, 0=False: "))

def cigar_party(cigars, is_weekend):
  if is_weekend and cigars >= 40:
      print("Yes! It was a successful cigar party!!!")
      return True
  elif cigars >= 40 and cigars <= 60:
      print("Yes! It was a successful cigar party!!!")
      return True
  else:
    print("No, it was a disappointing cigar party...")
    return False

cigar_party(cigars, is_weekend)

推荐阅读