← All posts tagged Python

Обновил ансибл до 2.0.0, стало работать в три раза быстре, но периодически появляются такие ошибки на случайных разных хостах:
fatal: [my.host.name]: FAILED! => {"failed": true, "msg": "ERROR! failed to resolve remote temporary directory from ansible-tmp-1452677063.08-205895277466160: `mkdir -p \"$( echo $HOME/.ansible/tmp/ansible-tmp-1452677063.08-205895277466160 )\" && echo
\"$( echo $HOME/.ansible/tmp/ansible-tmp-1452677063.08-205895277466160 )\"` returned empty string"}

Пока не понял, что делать, чтобы от этого избавиться. Кто-нибудь знает?

Можно ли в процессе жизни объекта поменять его тип? Мне сначала нужно создать объект определённого класса, а потом его «уточнить», сделать его подклассом. Сначала я не знаю, какой класс мне нужен, создаю объект общего класса. После некоторых действий я определяю, какой конкретный подкласс мне нужен. Так-то я могу сделать просто поле self.worker = MySubClass(), но нужно, чтобы в нём имелся доступ ко всем полям из self. Такое возможно, или мне по-другому делать?

Начали недавно с сыном (6 лет) учить питон. Начали с классы-объекты, вроде понял. Куда дальше можно двигаться? Объяснять примитивы (строки, числа, словари), думаю, рано ещё. Думаю, картинки какие-нибудь графические порисовать может. Чем лучше это делать?

Дано: некая полиномиальная функция, полученная при интерполяции данных [(x, y)] (ну или сами эти данные)
Надо: генерить рандомные значения, вероятность которых должна задаваться этой функцией (чем больше y, тем выше вероятность выпадения этого значения)
Доп. условие: диапазон при генерации может быть любой, не обязательно совпадать с началом и концом диапазона интерполируемых данных.

Вопрос: имеется ли в питоне (numpy?) способы сделать это, или надо писать самому?

Не могу понять, как работает следующая конструкция:

payments = payments[payments['birth_y'] != 0]

Здесь payments после выполнения будет содержать только те записи, в которых поле birth_y не равно 0.
По идее, payments[…] возвращает Series, который заведомо не целое число, так что сравнивать с 0 неуместно. Это похоже на какой-то питоний трюк. Кто знает, что это такое вообще? Может ли операция доступа по индексу как-то подменяться? Ну или что тут происходит?

Pandas — очень крутая штука. Я научился ею целиком заменять R, даже графики рисую. R меня напугал своей пхпичностью, а в Pandas кошерный питон. Вот мне и интересно, есть ли такие задачи, на которых Pandas отсасывает у R?