Вызов библиотечных функций в Python

#python #pandas #function #numpy #libraries

#python #pandas #функция #numpy #библиотеки

Вопрос:

Пример I: В некоторых случаях я использую имя библиотеки для вызова некоторого набора функций, например, np.median().
Случай II: И в некоторых случаях я использую имя переменной и название библиотеки для вызова другого набора функций, например, np.mean(heights) или heights.mean().
В случае II я могу использовать как имя библиотеки, так и имя переменной. В случае I работает только имя библиотеки.

Я сомневаюсь в том, как дифференцировать эти буксирные наборы функций. Если я в любом случае ошибаюсь, пожалуйста, проясните мои мысли. (здесь я имею в виду язык python)

Спасибо.

Ответ №1:

В первом случае вы вызываете метод (функцию) библиотеки. Библиотеки обычно представляют собой экземпляры классов или коллекции функций внутри модуля.

Во втором примере вместо этого вы снова вызываете функцию из модуля, но в этом случае она возвращает ndarray (в основном numpy-список), который сам по себе имеет некоторые методы, которые могут быть вызваны на нем.

Комментарии:

1. Спасибо. Мне нужны еще некоторые разъяснения. Как вы решаете, какой из них использует имя библиотеки или имя переменной?

2. В одном случае вы используете метод, непосредственно предоставляемый библиотекой, в другом вы воздействуете на элемент, который был сгенерирован этой библиотекой и который сам предоставляет некоторые из этих методов. Вам следует изучить шаблоны объектно-ориентированного программирования, но, вообще говоря, обращение к официальной документации — хорошее начало. Если вы посмотрите на np.mean , например, вы увидите, что первым параметром является array_like , то есть он принимает входные данные, а на выходе имеет ndarray . Рассматриваем ndarray объект, который имеет множество методов, которые тем или иным образом оперируют с массивом или с ним.