Python 与类型比较(my_函数)
我有一个函数,它应该根据传入它的参数类型进行操作,如图所示:Python 与类型比较(my_函数),python,python-3.x,types,comparison,Python,Python 3.x,Types,Comparison,我有一个函数,它应该根据传入它的参数类型进行操作,如图所示: def根据类型操作(参数已传递): 如果类型(参数_传递)==str: 做弦乐 elif类型(参数_传递)=dict: 做口述材料 elif类型(参数_传递)=函数: 参数_已通过() def my_函数():通过 根据类型(“Hello world”)操作 根据类型({“foo”:“bar})操作 根据类型操作(我的功能) 现在,虽然type(“Hello world”)、type({foo:“bar”})和type(my_函数)
def根据类型操作(参数已传递):
如果类型(参数_传递)==str:
做弦乐
elif类型(参数_传递)=dict:
做口述材料
elif类型(参数_传递)=函数:
参数_已通过()
def my_函数():通过
根据类型(“Hello world”)操作
根据类型({“foo”:“bar})操作
根据类型操作(我的功能)
现在,虽然type(“Hello world”)
、type({foo:“bar”})
和type(my_函数)
将分别返回
、
和
,但我似乎无法像对待str
那样,将函数与函数进行比较,这个词甚至没有“保留”
我应该如何进行?我应该继续吗?还是这很危险?您可以使用内置函数检查对象是否可调用:
...
elif callable(argument_passed):
argument_passed()
可以找到更多详细信息。也相关:谢谢!对不起,重复了。像这个例子这样的情况总体上被认为是不好的做法还是好的?@PierreMDL检查参数的类型从来都不是不好的做法:)