Поиск Kwargs и другой информации о пакетах Python - PullRequest
0 голосов
/ 28 января 2020

Hello StackOverflow Community,

Я начинающий Python программист, который переходит из MATLAB. Одна из моих самых больших проблем до сих пор была попытка понять, как узнать больше информации о новых Python пакетах, которые я устанавливаю. Позвольте мне привести конкретный пример ниже:

Допустим, я загружаю и хочу использовать пакет pygrib, чтобы открыть и получить некоторые данные атмосферы c из загруженного мной файла .grib. Я нахожу некоторый код онлайн ( здесь ), который показывает мне, как получить данные, используя pygrib. Автор этого кода использует синтаксис для пакета pygrib, который я просто не могу найти документально на сайте pygrib (например, pygrib.open.select.values(); pygrib.open.select()["latitudeOfFirstGridPointInDegrees]).

При поиске дополнительной информации о pygrib.open.select.values() на веб-сайте pygrib ( здесь ) я вижу, что pygrib.open.select() принимает **kwargs в качестве аргумента, и больше ничего не объясняется.

Мой вопрос: kwargs и .values - это одно и то же в Python? Например, является ли .values ключевым аргументом для pygrib.open.select()? Мои мысли приводят к ответу «нет», и тогда возникает другой вопрос:

Где можно найти больше информации о kwargs, который pygrib.open.select() принимает, и в целом, как можно найти эту информацию для других Python пакетов? Будет ли вопрос рассмотрения исходного кода для каждого класса?

Любая помощь или руководство искренне приветствуются. Спасибо за ваше время и усилия.

1 Ответ

0 голосов
/ 31 января 2020

Синтаксис args ключевого слова в целом хорошо документирован: geeksforgeeks.org / args-kwargs- python. Это заданное c использование kwargs, по-видимому, выполняет фильтрацию на основе определенных ключей в данных. Вы пытались вызвать grb.keys() (где grb - это значение gribmessage, возвращаемое pygrib.open.select()), чтобы найти вещи, которые можно использовать как kwargs в методе pygrib.open.select()?

Как кто-то обычно находит такие методы, как [gribmessage.keys]?

  1. Вам необходимо знать о Python и о том, что такое все, например, pygrib модуль, pygrib.open - это класс, а pygrib.open.select - это метод (все это в документах).
  2. Теперь, когда вы знаете, pygrib.open.select - это метод, проверьте, что он возвращает в документах. : a gribmessage.
  3. Найдите в документах gribmessage, и вы найдете метод gribmessage.keys.

Как кто-то обычно находит такие методы, как этот один? Например, в моем примере. Если бы я хотел найти информацию о методе pygrib.open.select.values(), где бы я искал?

Нет особого места, где я бы искал эту информацию; это больше о знании того, как использовать документы. При этом не похоже, что метод gribmessage.values хорошо документирован, единственное, что я могу увидеть, это метод gribmessage.__getitem__ (специальный метод Python, который допускает такие вещи, как grb["some key"]), где значения упоминается.

...