To invoke script, have you tried sending your argument?
driver.execute_script("f_func(arguments[0])", 46)
But what's wrong with clicking in the first place? If it doesn't work for you, please try use ActionChains
.
from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
# your code here
# then
ActionChains(driver).click(driver.find_element_by_id('func46')).perform()