python 如何 return 内置函数
python how to return built in function
我很难理解内置函数的概念,我有这段代码:
def reversed_args(f): # I can only change code in this function
a = args[::-1]
if func_name in int_func_map:
resultados = int_func_map[func_name](*a)
else:
resultados = string_func_map[func_name](*a)
return resultados
int_func_map = {
'pow': pow,
'cmp': lambda a, b: 0 if a == b else [1, -1][a < b],
}
string_func_map = {
'join_with': lambda separator, *args: separator.join(args),
'capitalize_first_and_join': lambda first, *args: ''.join([first.upper()] + list(args)),
}
queries = 1
for _ in range(queries):
line = input().split()
func_name, args = line[0], line[1:]
if func_name in int_func_map:
args = list(map(int, args))
print(reversed_args(int_func_map[func_name])(*args))
else:
print(reversed_args(string_func_map[func_name])(*args))
我的输入是
pow 2 3
但是当我 return 回答时,我收到一个异常说“'int' 对象不可调用”,任何人都可以指出为什么
经过一段时间的思考,我已经设法满足了我的需求,这是我为实现它所做的一段代码 运行:
def reversed_args(f):
if func_name in int_func_map:
def resultado(*kwargs):
return int_func_map[func_name](*args[::-1])
else:
def resultado(*kwargs):
return string_func_map[func_name](*args[::-1])
return resultado
我想有更好的方法,但我没有找到
我很难理解内置函数的概念,我有这段代码:
def reversed_args(f): # I can only change code in this function
a = args[::-1]
if func_name in int_func_map:
resultados = int_func_map[func_name](*a)
else:
resultados = string_func_map[func_name](*a)
return resultados
int_func_map = {
'pow': pow,
'cmp': lambda a, b: 0 if a == b else [1, -1][a < b],
}
string_func_map = {
'join_with': lambda separator, *args: separator.join(args),
'capitalize_first_and_join': lambda first, *args: ''.join([first.upper()] + list(args)),
}
queries = 1
for _ in range(queries):
line = input().split()
func_name, args = line[0], line[1:]
if func_name in int_func_map:
args = list(map(int, args))
print(reversed_args(int_func_map[func_name])(*args))
else:
print(reversed_args(string_func_map[func_name])(*args))
我的输入是
pow 2 3
但是当我 return 回答时,我收到一个异常说“'int' 对象不可调用”,任何人都可以指出为什么
经过一段时间的思考,我已经设法满足了我的需求,这是我为实现它所做的一段代码 运行:
def reversed_args(f):
if func_name in int_func_map:
def resultado(*kwargs):
return int_func_map[func_name](*args[::-1])
else:
def resultado(*kwargs):
return string_func_map[func_name](*args[::-1])
return resultado
我想有更好的方法,但我没有找到