为什么这个函数 return "None" 如果数字不是偶数?如何在不使用 else 条件的情况下使其成为 return "False"?
Why does this function return "None" if the number isn't even? How can I make it return "False" without using an else condition?
def my_function(n):
if(n % 2 == 0):
return True
print(my_function(2))
print(my_function(5))
输出:
True
None
我知道 'False' 必须明确指定才能由函数 return 编辑,但不完全理解 why.Can 此函数被设为 return false 没有合并 else 循环?
第一个问题:如果你没有在Python函数中指定任何return,它将return none
.
第二个问题:你可以做 return n%2 == 0
,如果 n 是偶数,则 return 为真,如果 n 为奇数,则为假。
def my_function(n):
if(n % 2 == 0):
return True
return False
因为只有一个return指示,否则return就是none、'nothing'。在这里我们强制它 return False 否则。
回答你的问题:你试图从根本没有价值的东西中得到一个错误的价值。因此是'none'。仅仅因为它不是真的并不一定意味着它是假的。
虽然有两种常见的方法可以做到这一点:
def my_function(n):
return n % 2 == 0
这将根据参数 n 评估为 True 或 False,然后它将 return 值。
另一种方式:
def my_function(n):
if(n % 2 == 0):
return True
return False
在这里,如果我们通过 if 检查,函数将为 return True,它永远不会进入 return False 语句。反之亦然,如果我们没有通过 if 检查,我们将取而代之 return False。我更喜欢以这种方式编写代码,因为它在代码的作用方面更具体一些。不过两种方法都有效
def my_function(n):
if(n % 2 == 0):
return True
print(my_function(2))
print(my_function(5))
输出:
True
None
我知道 'False' 必须明确指定才能由函数 return 编辑,但不完全理解 why.Can 此函数被设为 return false 没有合并 else 循环?
第一个问题:如果你没有在Python函数中指定任何return,它将return none
.
第二个问题:你可以做 return n%2 == 0
,如果 n 是偶数,则 return 为真,如果 n 为奇数,则为假。
def my_function(n):
if(n % 2 == 0):
return True
return False
因为只有一个return指示,否则return就是none、'nothing'。在这里我们强制它 return False 否则。
回答你的问题:你试图从根本没有价值的东西中得到一个错误的价值。因此是'none'。仅仅因为它不是真的并不一定意味着它是假的。
虽然有两种常见的方法可以做到这一点:
def my_function(n):
return n % 2 == 0
这将根据参数 n 评估为 True 或 False,然后它将 return 值。
另一种方式:
def my_function(n):
if(n % 2 == 0):
return True
return False
在这里,如果我们通过 if 检查,函数将为 return True,它永远不会进入 return False 语句。反之亦然,如果我们没有通过 if 检查,我们将取而代之 return False。我更喜欢以这种方式编写代码,因为它在代码的作用方面更具体一些。不过两种方法都有效