相关疑难解决方法(0)

为什么函数总是返回相同的类型?

我在某处读到函数应该总是只返回一种类型,所以下面的代码被认为是坏代码:

def x(foo):
 if 'bar' in foo:
  return (foo, 'bar')
 return None
Run Code Online (Sandbox Code Playgroud)

我想更好的解决方案是

def x(foo):
 if 'bar' in foo:
  return (foo, 'bar')
 return ()
Run Code Online (Sandbox Code Playgroud)

返回一个None然后创建一个新的空元组不是更便宜的记忆吗?或者这个时间差太小而不能注意到即使在较大的项目中?

python function return-type

25
推荐指数
5
解决办法
2万
查看次数

来自python函数的返回类型不一致 - 真的吗?

我是Python新手,但不是编程新手.为了学习Python,我将学习在线入门教程.我已经研究了多个函数示例,这些函数根据参数返回不一致的结果类型.EG,结果可以是整数或布尔值,如本例中的by_three():

def cube(number):
    return number**3

def by_three(number):
    if (number%3) == 0:
        return cube(number)
    else:
        return False
Run Code Online (Sandbox Code Playgroud)

这会给我发红旗.这是Python世界中可接受的做法吗?显然语言允许它,它可以完成,但它应该完成吗?

python

5
推荐指数
0
解决办法
271
查看次数

标签 统计

python ×2

function ×1

return-type ×1