Python CFFI函数的签名?

Python CFFI函数的签名?,python,python-cffi,Python,Python Cffi,我正在使用cffiPython模块包装许多库。我正在为它们编写模拟库,我想确定cffi包装函数的特定调用是否会由于调用签名不匹配而导致错误 我大致尝试将调用是否有效写在下面: import cffi ffi = cffi.FFI() ffi.cdef("int strlen(char *string)") lib = ffi.dlopen() is_call_valid(call=lib.strlen, args=(b"asd",)) is_call_valid(call=lib.strle

我正在使用
cffi
Python模块包装许多库。我正在为它们编写模拟库,我想确定cffi包装函数的特定调用是否会由于调用签名不匹配而导致错误

我大致尝试将调用
是否有效
写在下面:

import cffi

ffi = cffi.FFI()
ffi.cdef("int strlen(char *string)")
lib = ffi.dlopen()

is_call_valid(call=lib.strlen, args=(b"asd",))
is_call_valid(call=lib.strlen, args=(1,))

请尝试
ffi.typeof(lib.strlen).args
。这将获取参数的字符串名称,而不是所有参数是否都可以与之关联。否?在上面的示例中,我得到了
(,)
。请尝试
ffi.typeof(lib.strlen).args
。这将获得参数的字符串名称,而不是所有参数是否都可以与之关联。否?在上面的例子中,我得到了
(,)