#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
объект, который имеет множество методов, которые тем или иным образом оперируют с массивом или с ним.