Size: a a a

Хирьянов Т.Ф., Практика программирования на Python 3 (2019)

2020 December 30

БГ

Бензофуран Гетероцик... in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
std::slavik
ну это уже на усмотрение разработчика
Но дефолтный-то StreamHandler оказался синхронным
источник

ЯБ

Ясос Биб in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Айван
Делаем aiologger?)
поздно, она уже есть
источник

П

Петр in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
вопрос в том .
Вот некто написал модуль (в данном случае этот некто я, но ситуация может быть разной) . у него все работает. он использует этот модуль для своих личных целей и менять его не собирается . его все устраивает .
Его коллега видит полезную функцию из модуля товарища , и хочет использовать его в своем проекте . Он делает импорт работающего куска кода , но код не работает .
в теории через from подтягивается все пространство имен в проект (вплоть до перезаписи имеющихся значений) , по идеи и родителем является этот самый новый модуль и по идеи функция должна подтягивать переменную из нового места , но почему то у меня это не работает и я не понимаю почему

p.s. функция - это кусок кода который можно использовать много раз (коробка) , метод - это к ООП , типо что может делать объект . параметры - это то , что принимает функция , аргументы , то , что передается в функцию . Про глобальные переменные понятно , но иногда быстрее подтянуть глобальную переменную , чтобы понять будет работать или нет, а после переписать в нормальный вид
источник

П

Петр in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
оффтоп- как много незнакомых слов  aiologger  блокирующий ввод-вывод Тредпул StreamHandler😁
источник

ДК

Даниил Кустов... in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Петр
оффтоп- как много незнакомых слов  aiologger  блокирующий ввод-вывод Тредпул StreamHandler😁
aiologger - асинхронный логгер
Блокирующий ввод-вывод - это когда при входе или выходе данных куда-либо, блокируется вся программа
источник

БГ

Бензофуран Гетероцик... in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Айван
Делаем aiologger?)
Возможно это уже есть в aiomisc
источник

БГ

Бензофуран Гетероцик... in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Бензофуран Гетероцикл
Возможно это уже есть в aiomisc
Точнее скажу когда посмотрю видос по асинку)
источник

ЯБ

Ясос Биб in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Петр
вопрос в том .
Вот некто написал модуль (в данном случае этот некто я, но ситуация может быть разной) . у него все работает. он использует этот модуль для своих личных целей и менять его не собирается . его все устраивает .
Его коллега видит полезную функцию из модуля товарища , и хочет использовать его в своем проекте . Он делает импорт работающего куска кода , но код не работает .
в теории через from подтягивается все пространство имен в проект (вплоть до перезаписи имеющихся значений) , по идеи и родителем является этот самый новый модуль и по идеи функция должна подтягивать переменную из нового места , но почему то у меня это не работает и я не понимаю почему

p.s. функция - это кусок кода который можно использовать много раз (коробка) , метод - это к ООП , типо что может делать объект . параметры - это то , что принимает функция , аргументы , то , что передается в функцию . Про глобальные переменные понятно , но иногда быстрее подтянуть глобальную переменную , чтобы понять будет работать или нет, а после переписать в нормальный вид
т.е. вы хотите, чтобы какая-то функция из модуля, пользующаяся глобальными переменными, использовала при импорте другие глобальные переменные, находящиеся в области видимости, где она вызывается?

это невозможно, и это одна из причин, по которым нельзя пользоваться глобальными переменными
источник

П

Петр in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Спасибо Даниил 👍
источник

ЯБ

Ясос Биб in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
а асинхронное логгирование — это не очень весело.
```
источник

ЯБ

Ясос Биб in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
код
logger.info(msg1)
logger.debug(msg2)
logger.error(msg3)

выдаст в ауте сообщения в произвольном порядке
источник

ЯБ

Ясос Биб in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
сиди потом разбирайся, кто кого любил, а кто кого убил
источник

БГ

Бензофуран Гетероцик... in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Бензофуран Гетероцикл
Точнее скажу когда посмотрю видос по асинку)
Да, это есть в aiomisc
источник

БГ

Бензофуран Гетероцик... in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Ясос Биб
код
logger.info(msg1)
logger.debug(msg2)
logger.error(msg3)

выдаст в ауте сообщения в произвольном порядке
С чего бы это?
Если цивильно делать (например с очередями) то всё цивильно будет
источник

ЯБ

Ясос Биб in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Бензофуран Гетероцикл
С чего бы это?
Если цивильно делать (например с очередями) то всё цивильно будет
вот именно, с очередями. т.е. придётся не понятно зачем добавлять лишние сущности
источник

ЯБ

Ясос Биб in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
тут как с закрытием асинхронных контекстных менеджеров и всего прочего: да, оно всё синхронное, но чем-то жертвовать таки нужно
источник

П

Петр in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Ясос Биб
т.е. вы хотите, чтобы какая-то функция из модуля, пользующаяся глобальными переменными, использовала при импорте другие глобальные переменные, находящиеся в области видимости, где она вызывается?

это невозможно, и это одна из причин, по которым нельзя пользоваться глобальными переменными
А вон оно что . Я то думал , что эта самая (коробка) работает всегда . то есть не может быть такого , что у одного работает а у другого нет . Теперь понял
источник

П

Петр in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Спасибо за помощь
источник

ЯБ

Ясос Биб in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Петр
Спасибо за помощь
пожалуйста
и да, убедительная просьба соблюдать стандарт кодирования PEP8. В проде, по крайней мере
источник

А

Айван in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Ясос Биб
а асинхронное логгирование — это не очень весело.
```
Да и в синхронной функции, полагаю, не получится вызвать(?)
источник