Например, у меня плохо документированная библиотека. У меня есть объект из него, и я хочу знать, какие типы аргументов принимают определенные методы.Как определить тип параметра функции в python?
В IPython я могу запустить
In [28]: tdb.getData?
Signature: tdb.getData(time, point_coords, sinterp=0, tinterp=0, data_set='isotropic1024coarse', getFunction='getVelocity', make_modulo=False)
Docstring: <no docstring>
File: ~/.local/lib/python3.5/site-packages/pyJHTDB/libJHTDB.py
Type: method
, но это не дает мне типы аргументов. Я точно не знаю, что такое тип point_coords
.
Если это родная функция python, в смысле C нет строгих типов имен. Вы могли бы даже передать бутерброд с ветчиной как «point_coords». –
Если он не использует функцию аннотаций нового типа, то есть. –
Прочитайте исходный код и найдите соответствующие комментарии и какие операции они попытаются выполнить в аргументе, или посмотрите примеры использования. На странице Github говорится о функции ['test_plain'] (https://github.com/idies/pyJHTDB/blob/master/pyJHTDB/test.py#L45), которая, как представляется, указывает, что« point_coords »должна быть Nx3 NumPy массив float32 dtype. – user2357112