await user.send('Привет! Мой префикс = m!')
мне нужно поместить содержимое cFile в переменную
import time
limit = 10000000
i = 0
ts = time.time()
while (1<10):
i+=1
if i > limit:
break
pass
print(f"while (1<10): {time.time() - ts}")
ts = time.time()
i = 0
while True:
i+=1
if i > limit:
break
pass
print(f"while True: {time.time() - ts}")
while (1<10): 1.3074848651885986
while True: 1.0500555038452148
import os.path
from aiofile import async_open
import time
async def GetCode(timeout=120, file_path="temp_code.txt"):
"""
Эта функция ищет код в temp_code.txt.
Его, естессно, нужно будет туда записать, когда он будет получен
В производственной среде так делать не стоит. Используйте базу данных
:param timeout: время ожидания
:param file_path: путь к файлу с кодом
:return: code или None по истечению timeout
"""
while timeout > int(time.time()):
# ищем файл
if os.path.exists(file_path):
# читаем файл
async with async_open(file_path, 'r', encoding="utf-8") as f:
#code = содержимое файла. strip - удаляет пробелы (мало ли)
code = await f.read().strip()
# Если код есть - удаляем файл и возвращаем код
if code is not None:
os.remove(file_path)
return code
# спим 1 сек если код не нашли
await asyncio.sleep(1)
return None
client.start(phone, code_callback=GetCode)
хотя pip install Pillow может решить проблему