gpt4 book ai didi

基于 boolean 参数构造数组的 Pythonic 方式?

转载 作者:太空宇宙 更新时间:2023-11-03 15:53:35 25 4
gpt4 key购买 nike

我只是想知道 pythonic 代码如何解决这个问题:

假设你有一个函数:

def do_stuff(a=True, b=True, c=True, d=True):

在该函数中,您要构造相应的对象:

elements = []
if a:
elements.append(A())
if b:
elements.append(B())
if c:
elements.append(C())
if d:
elements.append(D())

有没有更漂亮的方式来编写这段代码?如果不是,也许可选参数不是“要走的路”?

最佳答案

Are there any more beautiful ways of writing this code?

说实话,在我看来。你可以巧妙地破解并使用它,但编写好的代码的目的是使其清晰易读,易于理解。除了您现在拥有的,我认为任何其他方法都无法满足所有这些要求。

当然它看起来很冗长,但最好是冗长而不是不必要的复杂。有时,显而易见的方法是最惯用的、健壮的、干净的和“pythonic”的解决方案。在这种情况下,我认为最好做 KISS。

但是,这也取决于您将参数传递给函数的方式。你现在所做的似乎有点奇怪。传入列表或字典可能会更自然。

关于基于 boolean 参数构造数组的 Pythonic 方式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45000814/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com