您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

获取Python函数以干净地返回标量或列表,具体取决于参数的数量

获取Python函数以干净地返回标量或列表,具体取决于参数的数量

scalify如果列表只有一个元素,则可以轻松编写一个从列表返回该元素的函数,即,它试图使其成为标量(因此命名)。

def scalify(l):
    return l if len(l) > 1 else l[0]

然后可以在函数中使用它,如下所示:

def foo(*args):
    return scalify([a + 1 for a in args])

这可以解决问题,但是我和那些建议您不要这样做的人在一起。由于一个原因,除非您知道至少传入了两个项目,否则它排除了对结果进行迭代的可能性。另外,如果有列表,则在调用函数时必须将列表解压缩,从而失去其“列表性”,并且您知道可能无法获得列表。在我看来,这些缺点掩盖了您可能会从该技术中看到的任何好处。

python 2022/1/1 18:47:24 有395人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶