【发布时间】:2018-12-22 07:10:31
【问题描述】:
我只是从 python 开始并得到一个问题。设计一个返回多种类型值的函数是个好主意吗?我阅读了一些关于坐的信息,并且完全理解当遇到错误或不满足前提条件时最好引发异常。但是如果没有错误但只是不同的多类型返回值怎么办?它是一个虚拟函数,但对于 multi_value 函数,如果我需要从函数访问值,我不需要编写类似 multi_value()[0] 的东西 参考:https://docs.quantifiedcode.com/python-anti-patterns/maintainability/returning_more_than_one_variable_type_from_function_call.html
from typing import Union
def multi_value(para : Union[list, int]):
return para[0] if len(para) == 1 else para
def fun(para : Union[list, int]):
return para
print(type(multi_value([1,2,3]))) #--> [1,2,3]
print(type(multi_value(['1']))) #--> '1'
print(type(multi_value([1]))) #--> 1
【问题讨论】:
标签: python return return-value return-type