gpt4 book ai didi

python - 如何避免函数名称中的参数类型?

转载 作者:太空宇宙 更新时间:2023-11-04 04:42:47 27 4
gpt4 key购买 nike

我有一个函数 foo 接受一个参数 stuff东西可以是数据库中的东西,我想创建一个接受 stuff_id 的函数,从数据库中获取 stuff,执行 foo.

这是我尝试解决的问题:1/创建第二个后缀为 from_stuff_id

的函数
def foo(stuff):
do something

def foo_from_stuff_id(stuff_id):
stuff = get_stuff(stuff_id)
foo(stuff)

2/修改第一个函数

def foo(stuff=None, stuff_id=None):
if stuff_id:
stuff = get_stuff(stuff_id)
do something

我不喜欢这两种方式。最符合 Python 风格的方法是什么?

最佳答案

假设 foo 是您应用程序的主要组件,这是您的第一种方法。每个功能应该有不同的目的。当您将多种用途组合到一个函数中时,您很容易迷失在长长的代码流中。

但是,如果一些其他功能也可以提供东西,那么使用第二个。

我唯一要补充的是确保您向每个函数添加文档字符串 ( PEP-257 ) 以用文字解释函数的作用。如有必要,您还可以在代码中添加注释。

关于python - 如何避免函数名称中的参数类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50288004/

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