{
"users": [
{"user": "name_test"},
{"user": "name_test1"},
{"user": "name_test2"}
]
}
import json
args = "name_test2"
with open('config.json', 'rb') as fp:
jsondata = json.load(fp)
jsondata['users'] = [item for item in jsondata['users'] if item['user'] != args]
print(jsondata)
import asyncio
from pyrogram import Client
import shelve
import random
from secret.config import Config
TEXTS = ['Круто!', 'Nice!!!!', 'Oh my god']
config = Config()
api_id = config.api_id
api_hash = config.api_hash
phone_number = config.phone
PUBLIC = config.title
chat_id = config.chat_id
name = config.name
processed_messages = shelve.open('processed_messages.db', writeback=True)
app = Client(name, api_id, api_hash, phone_number=phone_number)
async def main():
async with app:
public = await app.get_chat(PUBLIC)
async for msg in app.get_chat_history(chat_id, limit=100):
if msg.from_user: # если у нас есть параметр from_user
any_sender_id = msg.from_user.id # присваеваем ID юзера
else: # иначе
any_sender_id = msg.sender_chat.id # присваеваем ID канала или чата
if any_sender_id == public.id: # проверяем что это нужный паблик
if str(msg.id) in processed_messages:
print(f'Пропускаем уже обработанное message_id={msg.id}')
else:
processed_messages.update({str(msg.id): True})
print(f'Обработка message_id={msg.id}')
text = random.choice(TEXTS)
print(text)
result = await app.send_message(chat_id, text, reply_to_message_id=msg.id)
processed_messages.update({str(result.id): True})
await asyncio.sleep(1) # пауза, чтоб не банили за флуд
app.run(main())
big_file_id
можно использовать только для download.впр
, или поискпоз/индекс
, или суммпроизв
. lake_number = 0
@dp.message_handler()
async def lake(message: types.Message):
global lake_number
if message.text == 'Бассейн №1':
await bot.send_message(message.from_user.id, 'Введи расстояние до воды №1.')
lake_number = 1
if message.text == 'Бассейн №2':
await bot.send_message(message.from_user.id, 'Введи расстояние до воды №2.')
lake_number = 2
if bool(lake_number) and message.text.isdigit():
b = int(message.text)
if lake_number == 1:
h = 8 - b
v = (h / 3)
level = v / 16000 * 100 # тут в формуле где-то ошибка, поэтому я ее просто убрал
await bot.send_message(message.from_user.id,
str("Количество:" + str(v) + "м3. Глубина:" + str(h) + "м. Наполнение: " + str(
level) + "%"))
if lake_number == 2:
h2 = 5 - ((b - 1) * float(0.7))
s2 = (90 - (b * 0.52)) * (100 - (b * 0.52)) / 2
n = sqrt(2500 * s2)
s1 = 1
g = s1 + n + s2
v2 = (h2 / 3) * g
level2 = v2 / 17000 * 100
await bot.send_message(message.from_user.id,
str("Количество:" + str(v2) + "м3. Глубина:" + str(h2) +
"м. Наполнение: " + str(level2) + "%"))
lake_number = 0
await bot.send_message(message.from_user.id, "Попробуй еще...")
with
в скобках я бы сдвинул на таб вправо, и странные запятые в начале строк убрал бы взад.inner join
вправо на таб вместе с on
- потому что оно вместе с первой таблицей является подуровнем from
.with sum_bon as
(
select
worker_ref_id,
employee_title,
sex,
sum(bonus) as sbon
from
sf_employee as sfe
inner join sf_bonus as sfb
on sfe.id=sfb.worker_ref_id
group by
employee_title,
sex,
worker_ref_id
)
select
sum_bon.employee_title,
sum_bon.sex,
avg(sfe.salary+sbon) compensation
from
sf_employee as sfe
inner join sum_bon
on sfe.id=sum_bon.worker_ref_id
group by
sum_bon.employee_title,
sum_bon.sex