这是提示:
Clunker Motors Inc.正在召回1999 - 2002年型号 Extravagant 系列中的所有车辆。给定变量
modelYear
和modelName
写一份声明,指定{{1}如果True
和recalled
的值与召回详细信息匹配,则{}为modelYear
,否则为modelName
。
我编写了这段代码,却一直得到错误的答案。这些虚假陈述很好。
False
答案 0 :(得分:1)
当你这样做时 -
modelYear >= 1999 and modelYear <= 2002
modelName == "Extravagant"
你只是抛弃那些布尔表达式的结果,这不会神奇地使modelYear
或modelName
布尔值。
您可以简单地使用if
块本身中的表达式,而不是尝试创建布尔值。示例 -
if 1999 <= modelYear <= 2002 and modelName == "Extravagant":
recalled = True
else:
recalled = False
如果在真实代码中的if
块内,你所做的只是分配布尔值,那么你可以做 -
recalled = 1999 <= modelYear <= 2002 and modelName == "Extravagant"
答案 1 :(得分:1)
当你有:
modelYear >= 1999 and modelYear <= 2002
modelName == "Extravagant"
您不存储语句的结果。为了使它工作,你可以这样:
year = modelYear >= 1999 and modelYear <= 2002
name = modelName == "Extravagant"
if year and name:
recalled = True
else:
recalled = False
但更简单的解决方案是直接在if
语句中执行此操作,如:
if modelYear >= 1999 and modelYear <= 2002 and modelName == "Extravagant":
recalled = True
else:
recalled = False
最简单的方法是:
recalled = modelYear >= 1999 and modelYear <= 2002 and modelName == "Extravagant"