Получение объекта функции для функций int () и float ()

Я хочу передать функцию функции в Python. Я знаю, что могу сделать это просто, поместив имя функции в качестве параметра, например:

blah(5, function) 

Тем не менее, я хочу передать функцию int() функцию float() для этой функции. Если я просто поместил имя функции, тогда он предполагает, что я имею в виду типы int и float а не функции преобразования строк в int и float.

Есть ли способ передать функцию, а не тип?

2 Solutions collect form web for “Получение объекта функции для функций int () и float ()”

Просто передача int и float в порядке. Вы правы, что это фактически передаст объекты типа вместо функций, но это не важно. Важно то, что передаваемый объект можно вызвать, а вызов объектов типа будет делать то, что вы ожидаете.

Объекты типа – это то, что вы хотите.

 >>> def converter(value, converter_func): ... new_value = converter_func(value) ... print new_value, type(new_value) ... >>> converter('1', int) 1 <type 'int'> >>> converter('2.2', float) 2.2 <type 'float'> >>> 
  • Использование имен строк в разных функциях
  • Как python реализует взаимную рекурсию?
  • Программа Python не выполняется за пределами первого пользовательского ввода
  • Передать дескриптор файла функции cython
  • Запустите функцию PowerShell из скрипта Python
  • Имея несколько параметров с def в python
  • функция возвращает наименьшую разницу между элементами из двух списков - python
  • Понимание функций в Python
  • Python - лучший язык программирования в мире.