假设我在 python 中有这个函数:
def get_thing(rule):
if rule == 0:
return 5 #<<<< int
elif rule == 1:
return 'Hello' #<<<<< string
else:
return Student() #<<<<< Object
上述函数根据规则返回不同的值(int 或字符串或对象)。
我应该使用上述功能还是使用此功能:
def get_int()
return 5
def get_string()
return 'Hello'
def get_student()
return Student()
我的意思是函数返回不同的数据类型或值是pythonic吗?
在 java 中,您只能返回一种类型,例如:仅字符串。
我希望你能理解我的问题:)
谢谢。
编辑:其他例子
def get_person(id):
if #id is belongs to student:
return Student()
elif #id belongs to teacher
return Teacher()