# ru.py
def setup(dp):
@dp.message_handler()
async def ru_bot(message: types.Message): # да, эти функции описаны внутри setup()
...
@dp.callback_query_handler()
async def handle_callback_ru(callback_query: types.CallbackQuery):
...
# main.py
dp = ... # создаёшь диспетчер бота
import ru
ru.setup(dp) # регаешь обработчики из ru
... # запускаешь бота
simpleDividers(n)[len(simpleDividers(n))+1]
sets = [set() for _ in range(3)]
for s in sets:
print(id(s))
@state_router.message(MyState.stateA)
async def process_stateA(message: Message, state: FSMContext) -> None:
data = await state.get_data()
result = message.text + str(data['some_key']) # это типа логика обработки
await message.reply(result)
def do_stuff(msgtext: str, some_value) -> str:
return msgtext + str(some_value)
@state_router.message(MyState.stateA)
async def process_stateA(message: Message, state: FSMContext) -> None:
data = await state.get_data()
result = do_stuff(message.text, data['some_key'])
await message.reply(result)
white-space
со значениями pre
или pre-wrap
.1) Как мне использовать питон код в javascript коде сайта
2) Как я могу вносить изменения на работающую html страницу, аналогично работе javascript кода, написанного выше
subprocess.Popen
, os.system
, os.spawn
, os.startfile
, os.exec
, os.fork
и так далее. import sys
import traceback
# хук который ловит событие импорта модуля
def hook(event, args):
if event != 'import':
return
name, filename = args[0], args[1]
callstack = traceback.extract_stack(limit=None)
print(event, name, filename)
for item in traceback.format_list(callstack):
print(' ', item.strip())
sys.addaudithook(hook)
import json
print('Done')
print(languages is new_list) # True
a = [1, 2, 3]
b = a # b ссылается на тот же список
b.append(4) # список изменили
a = 5
b = a # b ссылается на 5
a += 1 # a = a + 1 т.е. a = 6 - a теперь ссылается на новый объект 6, b - по прежнему на 5.