currency, amount = message.text.split()[1:]
list1 = ['from=<test@yandex.ru>', 'from=<test2@yandex.ru>', 'tes23@yandex.ru', 'test@yandex.ru', ]
list2 = ['to=<test@yandex.ru>', 'to=<test2@yandex.ru>', 'to=<tes23@yandex.ru>', ]
# сформировать сколько нужно словарей по списку
counters = [Counter(x) for x in [list1, list2]]
with open('outputTest.csv', 'w') as csvFile:
writer = csv.writer(csvFile)
header = ['email_from', 'quantity' 'email_to', 'quantity']
writer.writerow(header)
for counter in counters:
for item, cnt in counter.items():
writer.writerow((item, cnt))
((ряд1значение1, ряд1значение2, ряд1значение3... ), (ряд2значение1, ряд2значение2, ряд2значение3... ), ...)
result2 = '\n'.join(' ║ '.join(f'{val}' for val in row) for row in cur.execute(f"SELECT * FROM {arg}"))
def patronymic(message): #получаем отчества
...
cursor.execute("INSERT INTO Profile (user_id, name, surname, patronymic) VALUES (?, ?, ?, ?)", (user_id, name, surname, patronymic))
create table mytable (id integer primary key,
user_id integer,
....,
unique(user_id)
)
INSERT INTO mytable (user_id, user_name) VALUES (...) ON CONFLICT(user_id) DO NOTHING
result = cur.execute('select 1 from mytable where user_id = ?), (user_id, )).fetchone()
if not result:
# делаем insert
...
t2 = time.time()
delta = t2-tdict[member.id]
print(datetime.timedelta(seconds=delta))
number = # на сколько нужно увеличить то число
cur.execute("UPDATE users SET number = number + ? WHERE user_id = ?", (number, user_id))
async def number(message: types.Message):
num = message.get_args()
await cur.execute("SELECT `user_id` FROM `admins` WHERE id = %s", (id, ))
sql = cur.fetchone()
if sql:
user_id = sql[0]
print(user_id)
@bot.message_handler(commands=['start'])
def start(message):
markup = types.ReplyKeyboardMarkup(resize_keyboard=True)
butt_1 = types.KeyboardButton("ПОЛУЧИТЬ ДЕНЬГИ")
butt_2 = types.KeyboardButton("БОНУС")
markup.add(butt_1, butt_2)
bot.send_message(message.chat.id, "Чё надо?", reply_markup=markup)
Дальше у меня возник вопрос и ступор - мы почему то возвращаем не результат выполнения функции wrapper, а возвращаем саму функцию-объект.
def f1(): return 1
a = f1() # присваиваем результат работы функции, т.е. в a будет 1
a = f1 # присваиваем саму функцию
# тогда a - это не результат работы функции f1, а сама функция f1
# и мы можем ее запустить
print(a() ) # выведет 1, т.к. мы через a запустили f1
@uppercase
def greet(): ...
# то когда мы запускаем функцию
greet()
# по факту запускается
uppercase(greet)()
original_result = func() # запускает переданную ему функцию на исполнение, в нашем случае greet
return f'Большие {original_result.upper()}' # и возвращает строку с результатами исполнения
И она сама каким-то образом вызывается и выполняется, хоть мы и явно не пишем это.
uppercase(greet)()
а т.к. uppercase(greet) возвращает wrapper
то uppercase(greet)() запускает wrapper()
if cursor.execute(f"SELECT username FROM users WHERE username = ?", (username, )).fetchone(): #Если такой пользователь уже есть
except Exception as e:
print('ошибка:', e)
return False
...
def GetStudent(self, _id):
return self.Handler[_id]
async def process_start_command(message: types.Message):
number1 = message.text.split()[1]
if not (number1.isdigit() and 1 <= int(number1) <= 1000):
await message.answer(f'введите число меньше 1000')
else:
random_number = random.randint(0, int(number1))