import random
a = ['_', '_', '_', '_', '_', '_', '_', '_', '_', '|', 'x', '0']
indexes = [x for x in range(1, 10)]
print(a[0], a[9], a[1], a[9], a[2])
print(a[3], a[9], a[4], a[9], a[5])
print(a[6], a[9], a[7], a[9], a[8])
win_condition = [[0, 1, 2], [3, 4, 5], [6, 7, 8], [0, 4, 8], [0, 3, 6], [1, 4, 7], [2, 5, 8]]
while True:
user_win = False
bot_win = False
for k in win_condition:
if all(a[j] == '0' for j in k):
print('Бот победил')
bot_win = True
break
if bot_win:
break
print("Ведите номер квадрата в сетке!")
f = int(input())
if 0 < f < 10:
if f in indexes:
a[-1 + f] = 'x'
print(a[0], a[9], a[1], a[9], a[2])
print(a[3], a[9], a[4], a[9], a[5])
print(a[6], a[9], a[7], a[9], a[8])
for k in win_condition:
if all(a[j] == 'x' for j in k):
print('Вы победили')
user_win = True
break
if user_win:
break
del indexes[indexes.index(f)]
else:
print('Клетка занята')
else:
print(f'Номер должен быть больше 0 и меньше 9')
while True:
try:
bot = random.choice(indexes)
print(f'Бот выбрал {bot}')
a[bot - 1] = '0'
print(a[0], a[9], a[1], a[9], a[2])
print(a[3], a[9], a[4], a[9], a[5])
print(a[6], a[9], a[7], a[9], a[8])
del indexes[indexes.index(bot)]
break
except IndexError:
print('Игра закончена')
bot.forward_message(int('мой айди'), message.chat.id, message.message_id)
try:
from ssl import PROTOCOL_TLS as default_ssl_protocol
except ImportError:
from ssl import PROTOCOL_SSLv23 as default_ssl_protocol
ssl_context = default_ssl_protocol
rosreestr
, у Росреестра сертификат от DigiCert, который в марте отзывал у санкционных организаций свои TLS сертификаты, проблема также может быть в этом. Отзывался ли у Росреестра не знаюaiohttp.ClientSession(
connector=aiohttp.TCPConnector(verify_ssl=False)
)
aioimaplib
для чтения и aiosmtplib
для отправки callback_data=data['address']
, в функции send_to_support_call
используете callback_data['address'] вместо data['address']user_id = int(callback_data.get("user_id"))
если вы не используете user_id из своей БД, а это user_id телеграма то зачем передавать в callback_data, если по умолчанию есть в callback query, и ниже вы его используете user_id=call.from_user.id
import json
import re
import requests
req = requests.get('https://steamcommunity.com/market/listings/730/Recoil%20Case')
search = re.search('var line1=(.+);', req.text)
data_str = search.group(1)
data = json.loads(data_str)
for x in data:
date = x[0]
usd_price = x[1]
num_of_sales = x[2]
print(date, float(usd_price), num_of_sales)
list_price = [float(x[1]) for x in data]
# Магическое число "2" для форматирования float до двух знаков после запятой
# Форматирование в f строке :.{2}f
print(f"Общее кол-во сделок: {sum([int(x[2]) for x in data]):.{2}f}")
print(f"Общая сумма сделок: {sum(list_price):.{2}f}")
if request.method == 'POST':
body = request.body.decode("utf-8")
orders = body.split('\n')
order_with_big_bags = {}
for parcel in orders:
bb_id = connect(table='parcels',
field='document_id',
equally=parcel,
item='big_bag_id')
try:
if isinstance(order_with_big_bags[bb_id], list):
order_with_big_bags[bb_id].append(parcel)
except KeyError:
order_with_big_bags[bb_id] = [parcel]
return Response(order_with_big_bags)
if request.method == 'POST':
body = request.body.decode("utf-8")
orders = body.split('\n')
order_with_big_bags = {}
for parcel in orders:
bb_id = connect(table='parcels',
field='document_id',
equally=parcel,
item='big_bag_id')
if bb_id not in order_with_big_bags:
order_with_big_bags[bb_id] = [parcel]
else:
order_with_big_bags[bb_id].append(parcel)
return Response(order_with_big_bags)
10^6 для меня более удобное определение порядка числа, чем смотреть сколько нулей в числе.