Python初学者问题:如何实现正数返回布尔值True?
修正方案
你的代码存在两个核心问题:
- 返回的是字符串
"True"和"None",但题目要求返回布尔值True(不带引号的原生布尔类型) - 非正数场景返回字符串
"None"不符合常规判断函数逻辑,通常这类函数会返回布尔值False;如果确实需要返回None,也应该返回None对象而非字符串。
推荐修正(返回布尔值)
这是最贴合需求的实现,直接利用比较表达式本身就是布尔值的特性:
def is_positive(number): return number > 0 number = -1 print(is_positive(number)) # 输出: False
若需非正数返回None的修正
如果题目明确要求非正数时返回None,则修改为:
def is_positive(number): if number > 0: return True # 去掉引号,返回原生布尔值True else: return None # 去掉引号,返回None对象 number = -1 print(is_positive(number)) # 输出: None
内容的提问来源于stack exchange,提问作者Suckerpunch093
相关产品推荐
相关产品推荐

