A.
ФДО это же дополнительного не на дневной?
Либо все же онлайн курсы от geekbrains конкретно факультет python разработки
Tishka17
ну кому как, мне bfs проще кажется.
def s(tree): return tree.value + sum(s(item) for item in tree.children)
Alex
по-моему в SICP есть фраза, что "цикл это просто синтаксический сахар над хвостовой рекурсией"
потому что в функциональных языках есть оптимизация хвостовой рекурсии
Aragaer
не только
Aragaer
и хвостовой может быть не только рекурсия, а любой хвостовой вызов
Nikolay
Скажите , когда я делаю post запрос через request . Мне поток возвращается или что ?
Aragaer
собственно я наблюдал, что в некоторых случаях сишный код рекурсивный генерит такой же асм, как и просто цикл
koder
Какой удачный наброс вышел
A.
а смысл на заочку? цель какая? корочки получить или научиться?
Знания придётся конечно самому получать, но и корочка не будет лишней
Дмитрий
def s(tree): return tree.value + sum(s(item) for item in tree.children)
алсо, это гарантированн будет работать на дереве, но если ВДРУГ появятся циклы - bfs модифицировать проще
Forevka ÐΞV
если через пост то рапарси через json либу метод loads
Дмитрий
Циклы в дереве?
в общем случае у тебя есть граф, и не всегда он дерево сейчас, и не-дерево завтра. но это уже оффтоп наверно
Forevka ÐΞV
Циклы в дереве?
дерево - частный случай графа, цикл в графе возможен
Tishka17
def s(tree, path=set{}): if tree in path: return 0 return tree.value + sum(s(item, path | {tree} ) for item in tree.children)
Aragaer
def s(tree): q = [tree] r = 0 while q: n = q.pop(0) r += n.value q.extend(n.children) return r
Tishka17
Aragaer
собссно без рекурсии, но без детектирования циклов. Добавить детектирование циклов нетрудно
Дмитрий
def s(tree): q = [tree] r = 0 while q: n = q.pop(0) r += n.value q.extend(n.children) return r
это называется поиск в ширину, и он тут тоже обсуждался)
Дмитрий
интереснее реализация mergesort без рекурсии
Дмитрий
например
Nikolay
response.text будет ответ от сервера
А если сервер мне возвращает 20 гигов, то мне вернётся чем? Массивом байт или чем ?
Aragaer
естессно рекурсия читается значительно проще
Дмитрий
Aragaer
реккурентно заданные вещи понятнее, чем "обобщенная формула"
Aragaer
те же числа фибоначчи реккурентно - понятно что такое. А общая формула это какой-то капец
Nikolay
Спасибо
Forevka ÐΞV
и да , будет поток
Alex
тогда впиши stream = True
и не забудь читать соответственно блоками.
Forevka ÐΞV
читай его чанками
Дмитрий
те же числа фибоначчи реккурентно - понятно что такое. А общая формула это какой-то капец
факториал еще интереснее, зато через общую формулу можно посчитать факториал числа Пи например
Tishka17
Ну-ка формулу для факториала числа Пи
Дмитрий
Ну-ка формулу для факториала числа Пи
https://ru.wikipedia.org/wiki/%D0%A4%D0%BE%D1%80%D0%BC%D1%83%D0%BB%D0%B0_%D0%A1%D1%82%D0%B8%D1%80%D0%BB%D0%B8%D0%BD%D0%B3%D0%B0
Denis
?
Это приближенная формула при большом n
Дмитрий
Это приближенная формула при большом n
ладно, https://ru.wikipedia.org/wiki/%D0%93%D0%B0%D0%BC%D0%BC%D0%B0-%D1%84%D1%83%D0%BD%D0%BA%D1%86%D0%B8%D1%8F
.
привет ребят можно ли на питоне написать бота для телеграмм что бы туда можно было добавлть пользователей и он выбирал бы одного в рандомном режиме
.
ладно . новыбирать их в рандоме можно
Ruslan
В multiprocessing.Queue есть метод cancel_join_thread, который позволит дочернему процессу завершиться, но тогда ты потеряешь данные из очереди, которые не успели записаться в пайп.
благодарю, получается join_thread вызывается неявно By default if a process is not the creator of the queue then on exit it will attempt to join the queue’s background thread. The process can call cancel_join_thread() to make join_thread() do nothing.
.
спасибо
Kairat
приходят разные даты с таймзоной, 2019-03-30 09:25:00+03:00, тут указан московский, мне надо в шаблоне вывести по моск времени. Как мне это сделать?
Tishka17
эм, ну парси а потом сериализуй как надо
Aragaer
strptime, поменять таймзону, strftime
Anonymous
Kairat
strptime, поменять таймзону, strftime
мне не нужно менять таймзону
.
а если просто самому добавлять пользователей а бот будет вибирать в рандомном режиме одно так пойдет?
Anonymous
а если просто самому добавлять пользователей а бот будет вибирать в рандомном режиме одно так пойдет?
а зачем искать пользователей, чтобы бот потом по рандому выбирал из вашего списка?
.
просто есть один проект где нужно выбрать одного случайног
Anonymous
я хз, может кто знает из чата, можно ли получить доступ к псевдонимам пользователей (@po_gromist, например) в виде списка?
Anonymous
если можно
Anonymous
ну или части хотя бы
Anonymous
зачем всех
Anonymous
я вот гуглю, ниче не нахожу по этому поводу
Anonymous
крч, если можно, то через генератор случайных чисел ищите случайное число, потом возвращаете элемент из списка псевдонимов пользователей под индексом того числа, которое вам генератор сгенерировал
Anonymous
и получаете рандомного пользователя
Дмитрий
крч, если можно, то через генератор случайных чисел ищите случайное число, потом возвращаете элемент из списка псевдонимов пользователей под индексом того числа, которое вам генератор сгенерировал
боты умеют добывать список пользователей из чата, в который их добавили. если хочется написывать случайным юзерам телеги, которые не в курсе что им собираются писать - наверно, так делать не надо
Артём
да, это подходит под определение слова "спам".
Anonymous
да, это подходит под определение слова "спам".
конечно спам, я бы тоже не хотел, чтобы меня боты задалбивали
Alex
не понял)
я не гей, но 20баксов - это 20баксов
Anonymous
я не гей, но 20баксов - это 20баксов
я не понимаю этих шуток, ребят)
Andrey
тогда придется внедрять бота в какой-то чат из людьми?
это можно делать и без бота. либа называется telethon
Дмитрий
тогда придется внедрять бота в какой-то чат из людьми?
именно. и бот будет выбирать из пользователей этого чата