==
, in
, and
if (operator_id in operator_mode) and (operator_mode[operator_id] == 'not_in_dialog'): ...
и вообще не советую так делать. Если у тебя в условиях повторяется operator_id in operator_mode
то почему его не вынести? А operator_mode[operator_id] == _
можно заменить конструкцей match-case. Конструкция досутпна с питона 3.10.if operator in operator_mode:
match operator_mode[operator_id]:
case 'not_in_dialog':
pass
case'in_dialog':
pass
# а тут если такое условие одно, можно так оставить. Но если их будет больше, как выше, то лучше сделать так как выше
elif (user_id in user_mode) and (user_mode[user_id] == 'in_dialog'):
pass
TO = 12345678 # кому
FROM = 87654321 # из какого чата
ID = 7 # id сообщения из чата FROM
"""
ЧАТ 87654321:
- сообщение: "Привет, мир!", id=7
ЧАТ 12345678:
---
"""
bot.copy_message(user,call.message.chat.id,int(message_id))
"""
ЧАТ 87654321:
- сообщение: "Привет, мир!", id=7
ЧАТ 12345678:
- сообщение: "Привет, мир!", id=1
"""
def getMainButtons():
kb = types.ReplyKeyboardMarkup(resize_keyboard=True)
some_button = types.KeyboardButton("КНОПКИ")
kb.add(some_button )
return kb
# reply_markup=getMainButtons()
if(message.text == "wiki"):
application = Application.builder().token("TOKEN").build()
# команда /id
@bot.message_handler(commands=['id'])
def id_cmd(message):
bot.send_message(message.chat.id,
f"Твой id: `{message.from_user.id}`\n"
f"id чата: `{message.chat.id}`",
parse_mode="MarkDown"
)
CHAT_ID = 1234567890 # твой id
bot.send_message(CHAT_ID, "text")
import random as r
print(r.randint(1, 11))
а в твоем случае лучше воспользоваться другим споcoбом.random.choice(iterable)
возвращает рандомный элемент из Итерируемого объектаimport random as r
CHAT_ID = 1234567890 # твой id
texts = [
"текст первый",
"текст второй",
"текст 3",
"и так далее"
]
bot.send_message(CHAT_ID, r.choice(texts))
messages = []
@bot.message_handler(commands=['start'])
def start(message):
m = bot.send_message(message.chat.id, f"Отправляй сообщения, когда закончишь - пиши /stop")
bot.register_next_step_handler(m, msgs)
def msgs(message):
if message.text != '/stop':
messages.append(message.text)
start(message)
else:
bot.send_message(message.chat.id, f'Ты навводил:\n\n'+"\n".join(messages))
Free accounts on PythonAnywhere have restricted Internet access -- they can only access sites on our whitelist. If you'd like a site to be added to the list, it will need an official public API -- if that site has one, then please post a link to the API docs.
Бесплатные учетные записи на PythonAnyWhere имеют ограниченный доступ в Интернет - они могут получить доступ только к сайтам вайтлиста Если вы хотите, чтобы сайт был добавлен в список, ему потребуется официальный общедоступный API - если он есть на этом сайте, пожалуйста, опубликуйте ссылку на документы API.
@bot.message_handler(commands=['start'])
def start(message):
buttons = types.InlineKeyboardMarkup()
button1 = types.InlineKeyboardButton("button 1", callback_data="1")
button2 = types.InlineKeyboardButton("button 2", callback_data="2")
buttons.add(button1, button2)
bot.send_message(message.chat.id, "кнопочки", reply_markup=buttons)
@bot.callback_query_handler(func=lambda c: True)
def callback(c):
if c.data == '1':
bot.send_message(c.message.chat.id, "Вы нажали на кнопку 1!")
if c.data == '2':
bot.send_message(c.message.chat.id, "Вы нажали на кнопку 2!")
def get_main_btns():
markup = types.InlineKeyboardMarkup()
some_btn = types.InlineKeyboardButton()
markup.add(some_btn)
return markup
bot.send_message(CHAT_ID, "main menu", reply_markup=get_main_btns())