python return none_Python - 返回,返回None,根本没有返回?

本文详细介绍了Python中函数返回`None`和不返回的区别。使用`return None`明确表示函数返回一个值,而在适当的情况下可以捕获并处理。当函数的目的是执行一个操作而不是返回值时,可以不使用`return`。此外,无返回值的函数在执行完毕后会默认返回`None`,这种情况下返回值通常不被利用。文章通过实例解释了何时使用这些返回方式,并强调了在调用函数时处理`None`返回值的重要性。
摘要由CSDN通过智能技术生成

在实际行为上,没有区别。他们都回来了None,就是这样。但是,所有这些都有时间和地点。以下说明基本上是如何使用不同的方法(或至少我应该如何教他们应该使用),但它们不是绝对的规则,所以如果你认为有必要你可以把它们混合起来。

运用 return None

这告诉该函数确实意味着返回一个值供以后使用,在这种情况下它返回None。None然后可以在其他地方使用此值。return None如果函数没有其他可能的返回值,则永远不会使用。

在下面的例子中,如果给定的是人,则返回person's' 。如果它不是人类,我们会返回,因为它没有(让我们假设它不是动物左右)。motherpersonNonepersonmotherdef get_mother(person):

if is_human(person):

return person.mother

else:

return None

注意:你永远不应该这样做var = get_mother(),因为让我们假设var是一个字典并且你通过var.items()进行迭代它将引用一个错误,引用None没有方法items()。你故意返回None然后必须在调用函数中适当地处理它。

运用 return

这与break循环中使用的原因相同。返回值无关紧要,您只想退出整个函数。它在某些地方非常有用,即使你经常不需要它。

我们得到15 prisoners,我们知道其中一个有刀。我们prisoner逐个循环检查他们是否有刀。如果我们用刀子打人,我们就可以退出这个功能,因为我们知道只有一把刀,没有理由检查其余部分prisoners。如果我们没有prisoner用刀找到,我们会提出警报。这可以通过许多不同的方式完成,并且使用return可能甚至不是最好的方法,但它只是一个示例来说明如何使用return退出函数。def find_prisoner_with_knife(prisoners):

for prisoner in prisoners:

if "knife" in prisoner.items:

prisoner.move_to_inquisition()

return # no need to check rest of the prisoners nor raise an alert

raise_alert()

注意:您永远不应该这样做var = find_prisoner_with_knife(),因为返回值并不意味着被捕获。

使用无return可言

这也将返回None,但该值不应被使用或捕获。它只是意味着功能成功结束。它与C ++或Java等语言return中的void函数基本相同。

在下面的示例中,我们设置了人的母亲姓名,然后在成功完成后退出该功能。def set_mother(person, mother):

if is_human(person):

person.mother = mother

注意:您永远不应该这样做var = set_mother(my_person, my_mother),因为返回值并不意味着被捕获。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值