опция упаковщика, чтобы избежать предупреждения при подготовке оболочки

Для меня getattr проще всего объяснить следующим образом:

Позволяет вам вызывать методы на основе содержимого строки вместо ввода имени метода.

Например , вы не можете этого сделать:

obj = MyObject()
for x in ['foo', 'bar']:
    obj.x()

, поскольку x не относится к типу «builtin», а «str». Однако вы можете это сделать:

obj = MyObject()
for x in ['foo', 'bar']:
    getattr(obj, x)()

Он позволяет динамически подключаться к объектам на основе вашего ввода. Я нашел это полезным при работе с пользовательскими объектами и модулями.

0
задан veben 16 January 2019 в 08:03
поделиться

1 ответ

Это не предупреждение, это ошибка.

Вы можете подавить его, заставив ваш скрипт завершиться с 0. Но вы, вероятно, хотите исправить ошибку.

Если вы предоставите свой сценарий, я могу дать более подробное руководство.

0
ответ дан Rickard von Essen 16 January 2019 в 08:03
поделиться
Другие вопросы по тегам:

Похожие вопросы: