Уведомления

Группа в Telegram: @pythonsu

#1 Янв. 5, 2023 15:21:43

Genabox
Зарегистрирован: 2022-12-24
Сообщения: 198
Репутация: +  1  -
Профиль   Отправить e-mail  

запуск функции из переменной

целью это го всего топика и было запустить функцию из переменной global_command
она все время динамическая потому что…..

Офлайн

#2 Янв. 5, 2023 15:26:09

Genabox
Зарегистрирован: 2022-12-24
Сообщения: 198
Репутация: +  1  -
Профиль   Отправить e-mail  

запуск функции из переменной

если интересно то концепт программы тут
https://www.youtube.com/watch?v=MXdsPKZyZ48

Офлайн

#3 Янв. 5, 2023 16:37:39

Genabox
Зарегистрирован: 2022-12-24
Сообщения: 198
Репутация: +  1  -
Профиль   Отправить e-mail  

запуск функции из переменной

 'global_command': voice_commands.global_command

должно быть как то так
я уже сомниваюсь в правильности использования словаря в данном вопросе

в global_command' выбирается из базы sql название функции которую нужно запустить
и она находится в модуле voice_commands
вот и все……

Отредактировано Genabox (Янв. 5, 2023 16:46:21)

Офлайн

#4 Янв. 5, 2023 17:18:50

Genabox
Зарегистрирован: 2022-12-24
Сообщения: 198
Репутация: +  1  -
Профиль   Отправить e-mail  

запуск функции из переменной

хм у меня получилось,,, не так как хотел но все же

main.py

 global_command = 'start-xx'
     def run_programm():
        global global_command
        commands = {
        global_command: voice_commands.start
        }
        commands[global_command](global_command)
    run_programm()
voice_commands.py
 def start(global_command):
	print('TEST*********!' )
	if global_command == 'start-xx':
		error_request()
def error_request():
		print('COMMAND RUN: Ваша команда выполнена быть не может')	
	

и того если если global_command содержит error_request то запускается error_request из voice_commands
или тут
если start-xx то тоже error_request
вообщем что я и пытался добится из начально

Отредактировано Genabox (Янв. 5, 2023 17:21:57)

Офлайн

#5 Янв. 5, 2023 18:42:00

Genabox
Зарегистрирован: 2022-12-24
Сообщения: 198
Репутация: +  1  -
Профиль   Отправить e-mail  

запуск функции из переменной

Офлайн

#6 Янв. 5, 2023 21:17:52

xam1816
Зарегистрирован: 2020-05-11
Сообщения: 1356
Репутация: +  119  -
Профиль   Отправить e-mail  

запуск функции из переменной

Genabox
если интересно то концепт программы тут
у него в коде нет не одного global
у тебя не возникло вопроса, как у него так складно получилось?
а к функциям он обращается через
 exec()
решение такое же исключительное как и использование global

Genabox
и сам подумай 100 вопросов - 100 функций
за заколупаюсь это все писать

так можно писать функции с декоратором
  
commands = {}
 
def cmd(func):
    commands[func.__name__] = func
    return func
 
@cmd
def voice():
    print('la-la-la')
 
commands['voice']()

а если уже есть 100 функций,то взять этот файл.py с функциями и спарсить все имена в словарь ну или скриптом подставить @cmd как в примере выше

Офлайн

#7 Янв. 5, 2023 22:09:58

Genabox
Зарегистрирован: 2022-12-24
Сообщения: 198
Репутация: +  1  -
Профиль   Отправить e-mail  

запуск функции из переменной

да получилось у него очень складно я тоже удивился этому
но когда ты работаешь с его кодом и привыкаешь к нему то понимаешь что он делал обучающее видео которое короткое по коду для удобства понимания зрителя

global я ввел потому что у меня там не только команды еще есть префексы таблиц ответы и вопросы как потоковые текстового чата (в дискорде)

exec() - да как то мимо прошел….

100та функцие еще конечно нету но там будет тех инфа , тоесть это личный помошник
так что потом крыша паедет это все парсить и переписывать

я пишу название функции в базу sql как глобальную команду
- к этому вопрос-ответ
а в исходниках только сама функция по названию
и все в одну строку sql, а сам код в файл voice_commands

вообще интересная тема. можно умный дом подключить, и потом еще хочу gpt chat …….

Офлайн

#8 Янв. 5, 2023 22:22:55

Genabox
Зарегистрирован: 2022-12-24
Сообщения: 198
Репутация: +  1  -
Профиль   Отправить e-mail  

запуск функции из переменной

у меня уже готов пак звуков сделаный в FL Studio
такого плана
вообще крышесносная вещ выходит

Прикреплённый файлы:
attachment bot_activ.mp3 (307,2 KБ)

Офлайн

#9 Янв. 5, 2023 23:49:43

Genabox
Зарегистрирован: 2022-12-24
Сообщения: 198
Репутация: +  1  -
Профиль   Отправить e-mail  

запуск функции из переменной

а вот gtp chat если не вкурсе
https://www.youtube.com/watch?v=Ni1trFsCQeQ

Офлайн

#10 Янв. 6, 2023 00:01:50

Genabox
Зарегистрирован: 2022-12-24
Сообщения: 198
Репутация: +  1  -
Профиль   Отправить e-mail  

запуск функции из переменной

еще подумываю сразу 3 бота прописать на 1 прогу
тоесть 1 умеет время , стихи погоду знакомится и представлять остальных - работать с mysql
второй мне по работе всякую тех инфу выдавать- работать с mysql и API
и третий уже gtp chat, тоесть у каждого свое имя и все это одним голосовым каналом
как ты заметил с распознаванием текста проблем нет, я пробовал новости спарсить прямо со стрима на ютубе в онлайн, никогда не думал что люди так много текста разговаривают, если нет звуковой подложи то выдает 99,5% правильного текста и это еще на телефонном движке на 40 мег, еще есть на 2,5 гб но он долго грузится и в оперативке 10 ка висит

Отредактировано Genabox (Янв. 6, 2023 00:37:44)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version