@ru_python

Страница 6489 из 9768
Василий
12.09.2018
07:14:01
?
12.09.2018
07:14:01
Понял

Aragaer
12.09.2018
07:14:16
пусть эта бесконечность там внутри, а тут run_until_complete

мало ли, когда-нибудь захочется, чтобы бесконечность закончилась

Google
?
12.09.2018
07:14:29
run_forever будет снова инициировать функцию, после ее завершения. Верно?

Aragaer
12.09.2018
07:14:35
C-c наприме

нет, не будет

Василий
12.09.2018
07:14:45
Ох, пойду осваивать, зря я ночью прогуливал asyncio. Спасибо!
Штука весьма годная и сейчас нужна почти любому питонщику. так что изучить лишнем не будет

Aragaer
12.09.2018
07:14:46
run_forever это мы запустили луп и все

остановится только когда loop.stop() будет вызван

все таски, которые ты накидал в него, отработают один раз и все. И луп просто будет висеть и ждать, пока появится еще какая-нибудь работа

?
12.09.2018
07:16:17
В таком случае программа просто будет висеть, даже если все функции закончили работу, верно?

Точнее не висеть, а ждать новый loop

Dmitriy
12.09.2018
07:18:00
при вызове ctypes.CDLL, как посмотреть что возвращается .so'кой?

Aragaer
12.09.2018
07:18:20
ждать новый таск

да

Василий
12.09.2018
07:20:38
Точнее не висеть, а ждать новый loop
loop это общий цикл выполнения где выполняются таски. Обычно он один на thread. поэтому мы пишем get_event_loop() и с ним уже работаем. Но такое не сработает если ты создал новый Thread там придется делать новый через new_event_loop()

Google
Black head
12.09.2018
07:22:56
Всем привет! Кто с opencv на питон хорошо знает? Как увеличить тайм-аут videocapture()?

?
12.09.2018
07:23:38
loop.run_until_complete(asyncio.gather(*task_list)) Тут звездочка чтобы он всё принял в args? Разве нельня просто передать кортеж?

?
12.09.2018
07:26:17
Понял, тупой вопрос

Если ли вариант запустить всё tasks и продолжить выполнение программы?

Василий
12.09.2018
07:42:33
да. просто весь код своей программы оберни в функцию async def и запусти в цикле )

?
12.09.2018
08:04:11
class BotEvents: def __init__(self): @self.bot.event async def on_ready(): ... create_tasks() print('A') def create_tasks(): loop = asyncio.get_event_loop() task_list = [counter(server) for server in self.servers.keys()] loop.run_until_complete(asyncio.gather(*task_list)) loop.close()

Artem?
12.09.2018
08:24:43


Не подскадите??

Я BS4 установил

?
12.09.2018
08:25:09
pip3 install lxml

Artem?
12.09.2018
08:25:27
понял, сейчас попробую. спасибо

?
12.09.2018
08:27:26
def get_text_html(html): return забыл

Artem?
12.09.2018
08:27:28
pip3 install lxml
Спасибо!

Я не забыл я еще дальше пишу! Спасибо еще раз!

?
12.09.2018
09:01:21
loop = asyncio.get_event_loop() task_list = [counter(server) for server in self.servers.keys()] loop.run_forever(asyncio.gather(*task_list)) loop.close()
Traceback (most recent call last): File "/home/poppy/.local/lib/python3.5/site-packages/discord/client.py", line 307, in _run_event yield from getattr(self, event)(*args, **kwargs) File "/media/poppy/Ntfs_128gb/Projects/python3/Social networks/Discord/bots/LiveCounter/botevents.py", line 17, in on_ready await run_counter() File "/media/poppy/Ntfs_128gb/Projects/python3/Social networks/Discord/bots/LiveCounter/botevents.py", line 23, in run_counter loop.run_until_complete(asyncio.gather(*task_list)) File "/usr/lib/python3.5/asyncio/base_events.py", line 454, in run_until_complete self.run_forever() File "/usr/lib/python3.5/asyncio/base_events.py", line 408, in run_forever raise RuntimeError('This event loop is already running') RuntimeError: This event loop is already running

Google
?
12.09.2018
09:11:08
task_list = [counter(server) for server in self.guilds.keys()] loop.gather(asyncio.gather(*task_list)) ?

Василий
12.09.2018
09:13:43
task_list = [counter(server) for server in self.guilds.keys()] asyncio.gather(*task_list, loop=loop))

?
12.09.2018
09:16:03
Можешь в крации роль await?

До запуска есть функция получения инфы, если я ставлю await servers_info() То есть ошибка лишь про RuntimeError: This event loop is already running И всё равно запускаются counter Если я убираю await, то сыпятся /media/poppy/Ntfs_128gb/Projects/python3/Social networks/Discord/bots/LiveCounter/botevents.py:16: RuntimeWarning: coroutine 'BotEvents.__init__.<locals>.servers_info' was never awaited servers_info() Ignoring exception in on_ready Traceback (most recent call last): File "/home/poppy/.local/lib/python3.5/site-packages/discord/client.py", line 307, in _run_event yield from getattr(self, event)(*args, **kwargs) File "/media/poppy/Ntfs_128gb/Projects/python3/Social networks/Discord/bots/LiveCounter/botevents.py", line 20, in on_ready loop.run_until_complete(asyncio.gather(*task_list)) File "/usr/lib/python3.5/asyncio/base_events.py", line 454, in run_until_complete self.run_forever() File "/usr/lib/python3.5/asyncio/base_events.py", line 408, in run_forever raise RuntimeError('This event loop is already running') RuntimeError: This event loop is already running Traceback (most recent call last): File "main.py", line 25, in <module> DiscordBot() File "main.py", line 21, in __init__ self.bot.run(const.BOT_TOKEN) File "/home/poppy/.local/lib/python3.5/site-packages/discord/client.py", line 519, in run self.loop.run_until_complete(self.start(*args, **kwargs)) File "/usr/lib/python3.5/asyncio/base_events.py", line 464, in run_until_complete raise RuntimeError('Event loop stopped before Future completed.') RuntimeError: Event loop stopped before Future completed. И программа закрывается

Aragaer
12.09.2018
09:22:16
если уже запущен, то run_until_complete не требуется, надо wait

ну или наоборот, если ты сначала что-то запускал асинковое, то надо было это делать в run_until_complete, чтобы луп был снова остановленным

?
12.09.2018
09:28:23
await servers_info() task_list = [counter(server) for server in self.guilds.keys()] asyncio.gather(*task_list) Получилось вот таким вариантом, тоесть await переключается после servers_info на сопрограмму с функцией counter, так?

Bogdan
12.09.2018
09:35:50
Всем привет! Кто знает как в telnetlib обработаь правильно не верный логин/пароль? tn = telnetlib.Telnet(T_HOST,23,5) tn.read_until("Username: ", 5) tn.write(T_USER + "\n") if T_PASSWORD: tn.read_until("Password: ", 5) tn.write(T_PASSWORD + "\n") #tn.write('show switch') data = '' tn.read_until('#') tn.write('show fdb port 1\n') while data.find('#') == -1: data = tn.read_very_eager() print data sleep(1)

если он по какойто причине не верный, где это ловить

Максимка
12.09.2018
09:37:31
Пацаны, питон или Пайтон?

?
12.09.2018
09:37:44
В этом случае запускается функция за первым аргументом(Скажем с сервером 1) и всё, но если я нажму CTRL+C, то запустится функция уже с сервером 2

await servers_info() task_list = [counter(server) for server in self.guilds.keys()] asyncio.gather(*task_list) Получилось вот таким вариантом, тоесть await переключается после servers_info на сопрограмму с функцией counter, так?

Letalis
12.09.2018
09:38:08
Пацаны, питон или Пайтон?
пайсон (с межзубное)

Бензофуран
12.09.2018
09:38:25
не понял кто на ком стоял, но на всякий случай скажу, что наверняка можно )
Ну есть сервер который на asyncio работает, я хочу к нему добавить тгбота что бы они работали вместе

Albatrosicks
12.09.2018
09:38:37


Aragaer
12.09.2018
09:39:08
птон

Hot
12.09.2018
09:39:24
Житон

Tishka17
12.09.2018
09:39:28
петухон

Albatrosicks
12.09.2018
09:40:19
https://forvo.com/word/python/#en

Бензофуран
12.09.2018
09:51:57
Пистон

Google
Admin
ERROR: S client not available

Бензофуран
12.09.2018
09:52:01
Присоединяюсь

Sergey❄️
12.09.2018
09:55:09
Пихтон

Tigran
12.09.2018
09:56:03
путхон

Александр
12.09.2018
09:56:47
Путён

Василий
12.09.2018
09:57:44
await servers_info() task_list = [counter(server) for server in self.guilds.keys()] asyncio.gather(*task_list) Получилось вот таким вариантом, тоесть await переключается после servers_info на сопрограмму с функцией counter, так?
await это явное ожидание ответа от сопрограммы. то есть поток исполнения блокируется до ответа от сопрограммы. как в обычном синхронном случае. Иначе, без await текущий поток и поток сопрограммы выполняются параллельно и конкурентно.

Василий
12.09.2018
10:01:10
await это ведь типа активации yield from
yield это возврат итератора. a await это ожидание ответа от сопрограммы. немного другое. а уж асинхронные генераторы это вообще отдельная тема

?
12.09.2018
10:04:47
А насчет этого?

В этом случае запускается функция за первым аргументом(Скажем с сервером 1) и всё, но если я нажму CTRL+C, то запустится функция уже с сервером 2

await servers_info() task_list = [counter(server) for server in self.guilds.keys()] asyncio.gather(*task_list) Получилось вот таким вариантом, тоесть await переключается после servers_info на сопрограмму с функцией counter, так?

К тому что они запускаются по очереди, но так как внутри While True: то работает один из них

Mename
12.09.2018
10:12:46
https://www.opennet.ru/opennews/art.shtml?num=49256

Проксимов
12.09.2018
10:14:06
Что такого? Ничего криминального

Mename
12.09.2018
10:14:39
Что такого? Ничего криминального
Обсуждение поднял Сальвадор Санфилиппо (Salvatore Sanfilippo), создатель СУБД Redis, который не считает, что переименование оправдано, но вынужден реагировать из-за давления со стороны политактивистов, призывающих не использовать Redis из-за применения дискриминационной терминалогии.

Tony
12.09.2018
10:14:46
Mename
12.09.2018
10:14:52
ПОЛИТАКТИВИСТОВ

Mename
12.09.2018
10:15:50
Покуда такие термины как slave считаются чем-то особенным, они будут оставаться особенными

Google
Mename
12.09.2018
10:16:50
И вместо того, чтобы постепенно искоренять их предыдущие значения более частым использованием в реальной жизни, разработчики идут на поводу у тех, кто считает себя дохуя важными чтобы решать, как людям говорить

Letalis
12.09.2018
10:43:37
ПОЛИТАКТИВИСТОВ
вот тоже интересно, они тут причем вообще.

Василий
12.09.2018
10:52:19
тогда почему 2 асинк функции могут работать одновременно, если обе ожидают ответа?
чтобы так было ты должен их собрать через специальную функцию типа gather или wait иначе ты можешь и await от них вместе. await приостанавливает текущий поток выполнения.

Страница 6489 из 9768