Форум сайта python.su
def run_programm(): global global_command b = str('voice_commands.' + global_command) commands = { global_command: b, } commands[global_command]() run_programm()
Офлайн
def run_programm(): global global_command b = 'voice_commands.' + global_command commands = { global_command: b, } print(commands) commands[global_command]() run_programm()
Офлайн
если записать global_command в ключ словаря то это именно то что и нужно….
пока такое: TypeError: ‘str’ object is not callable
Отредактировано Genabox (Янв. 4, 2023 22:13:47)
Офлайн
def run_programm(): global global_command sss = ast.literal_eval("{'voice_commands." + global_command + "'}") res = dict.fromkeys(sss, global_command) print(res) res[global_command]() run_programm()
Офлайн
def run_programm(): global global_command s = "{'"+ global_command +"' : 'voice_commands." + global_command + "' }" json_acceptable_string = s.replace("'", "\"") d = json.loads(json_acceptable_string) print(d) commands = { 'start': voice_commands.start } print (commands) d[global_command]() run_programm()
Офлайн
есть идеи? для меня загадка почему 2 одинаковых словаря по разному работают
{'start': ‘voice_commands.start’} {'start': <function start at 0x000002900FB5EF80>}
Отредактировано Genabox (Янв. 5, 2023 10:12:47)
Офлайн
Genaboxпотому что основы знаешь посредственно, то что ты делаешь, это пиздец. То строку вызываешь как функцию, то запрашиваешь ключ из словаря которого нет, не пробовал расшифровать ошибки, там об этом написано, только по английски
есть идеи? для меня загадка почему 2 одинаковых словаря по разному работают
Офлайн
{'start': ‘voice_commands.start’} {'start': <function start at 0x000002900FB5EF80>}
Офлайн
Genaboxчем тебе этот пример не понравился
а так все запустилось
commands = { 'start': voice_commands.start, 'stop': voice_commands.stop } def run_programm(): global global_command commands[global_command]() run_programm()
Офлайн
потому что у меня программа должна видеть
global_command
а тут start и stop
это бот который ощет ответы в базе mysql
и сам подумай 100 вопросов - 100 функций
за заколупаюсь это все писать
Офлайн