Определить соглашение о передаче аргумента функции библиотеки C - PullRequest
8 голосов
/ 01 июля 2011

С чисто Python-функциями вы можете передавать аргументы либо по порядку (например, foo(1, 2, 3)), либо по имени (например, foo(a=1, c=3, b=2)).

Функции, определенные в модулях C , могут использовать любое соглашение .Вы не можете сказать range(stop=10, step=2), и это относится к большинству, но не ко всем функциям, реализованным с использованием интерфейса C.

Есть ли способ определить соглашение о передаче аргументов функции из Python?

1 Ответ

4 голосов
/ 01 июля 2011

Кажется, это открытая ошибка : просто нет способа сказать это.Кроме того, проблема зависит от реализации: ваш код может работать (например) в PyPy, хотя я не могу это подтвердить.

Разработчики на странице ошибок не уверены, стоит ли менять стиль документацииили реализации, но у меня сложилось впечатление, что это не является актуальной проблемой для них в любом случае.

...