gpt4 book ai didi

arguments - 选择 2-3 个选项作为函数参数的 Pythonic 方式

转载 作者:太空狗 更新时间:2023-10-29 17:58:54 24 4
gpt4 key购买 nike

我有一个 Python 函数,它需要一些参数,其中之一是要执行的模拟类型。例如,选项可以是“太阳能”、“ View ”或“两者”。

允许用户设置这些的 Pythonic 方法是什么?

我可以看到各种选项:

  1. 使用字符串变量并检查它 - 所以它将是 func(a, b, c, type='solar')

  2. 在类中设置一些常量并使用func(a, b, c, type=classname.SOLAR)

  3. 如果只有两个选项(就像我的一些函数一样),通过使用类似 func(a, b, c, do_solar=False) 的东西将其强制为 True/False 参数 让它使用“查看”选项。

对 Pythonic 的方式有什么偏好(或其他想法)吗?

最佳答案

如果 Niklas 在 his answer 中提出的观点不成立,我会使用字符串参数。标准库中有使用类似参数的 Python 模块。例如csv.reader() .

sim_func(a, b, c, sim_type='solar')

请记住在函数内部给出一个合理的错误,这可以帮助人们在输入错误的内容时解决问题。

def sim_func(a, b, c, sim_type='solar'):
sim_types = ['solar', 'view', 'both']
if sim_type not in sim_types:
raise ValueError("Invalid sim type. Expected one of: %s" % sim_types)
...

关于arguments - 选择 2-3 个选项作为函数参数的 Pythonic 方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9522877/

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