Как убрать кавычки в значении переменной в Python
Например, переменная a равна строке:
a = 'Test'.
Как сделать чтобы a стала равна этой же строке, но без кавычек? Чтобы a стала равна Test?
p.s. Просто нужно в ней хранить название функции, которое передаётся в строковом формате
Ответы (2 шт):
Открыть учебник по Python.
Прочитать раздел про строковые переменные. (Обычно не далее десятой страницы после начала книги).
Понять, что означает запись a = 'Test'. (Собственно, вашей переменной a и присваивается текстовая строка без всяких кавычек).
P.S. Ума не приложу, как можно дойти до хранения названия функций и не знать, что такое строка?? Вы что учебник читаете не подряд, а одну страницу из каждых двадцати трех?
Такой код вполне работает:
def func(x):
print(f'func({x}) call')
name = 'func'
arg = '10'
exec(f'{name}({arg})')
>>> func(10) call
Если же вы желаете с помощью exec присвоить переменной функцию по названию, то это будет как-то так:
def func(x):
print(f'func({x}) call')
name = 'func'
var = 'a'
exec(f'{var} = {name}')
a(4)
>>> func(4) call