返回

如何使用可选参数创建Python函数?

发布时间:2022-06-08 05:53:39 288
# node.js

我有一个Python函数,它接受几个参数。在某些情况下,可以省略其中一些参数。

def some_function (self, a, b, c, d = None, e = None, f = None, g = None, h = None):
    #code

论据d通过h是每个字符串都有不同含义的字符串。重要的是,我可以选择在任何组合中传递哪些可选参数。例如(a, b, C, d, e)(a, b, C, g, h)(a, b, C, d, e, f,或全部(这些是我的选择)。

如果我可以重载该函数,那就太好了——但我读到Python不支持重载。我试图在列表中插入一些必需的int参数,但出现了参数不匹配错误。

现在,我正在发送空字符串来代替前几个丢失的参数作为占位符。我希望能够使用实际值调用函数。

有没有办法做到这一点?我可以传递一个列表而不是参数列表吗?

目前,使用ctypes的原型看起来像:

_fdll.some_function.argtypes = [c_void_p, c_char_p, c_int, c_char_p, c_char_p, c_char_p, c_char_p, c_char_p]
特别声明:以上内容(图片及文字)均为互联网收集或者用户上传发布,本站仅提供信息存储服务!如有侵权或有涉及法律问题请联系我们。
举报
评论区(2)
按点赞数排序
用户头像