分享

九、Python函数返回多个值的方法(入门必读)

 星光闪亮图书馆 2019-08-08
如果程序需要有多个返回值,则既可将多个值包装成列表之后返回,也可直接返回多个值。如果 Python 函数直接返回多个值,Python 会自动将多个返回值封装成元组。

如下程序示范了函数直接返回多个值的情形:
  1. def sum_and_avg(list):
  2. sum = 0
  3. count = 0
  4. for e in list:
  5. # 如果元素e是数值
  6. if isinstance(e, int) or isinstance(e, float):
  7. count += 1
  8. sum += e
  9. return sum, sum / count
  10. my_list = [20, 15, 2.8, 'a', 35, 5.9, -1.8]
  11. # 获取sum_and_avg函数返回的多个值,多个返回值被封装成元组
  12. tp = sum_and_avg(my_list) #①
  13. print(tp)
上面程序中的第 9 行代码返回了多个值,当 ① 号代码调用该函数时,该函数返回的多个值将会被自动封装成元组,因此程序看到 tp 是一个包含两个元素(由于被调用函数返回了两个值)的元组。

此外,也可使用 Python 提供的序列解包功能,直接使用多个变量接收函数返回的多个值。例如如下代码:
  1. # 使用序列解包来获取多个返回值
  2. s, avg = sum_and_avg(my_list) #②
  3. print(s)
  4. print(avg)
上面程序中的 ② 号代码直接使用两个变量来接收 sum_and_avg() 函数返回的两个值,这就是利用了 Python 提供的序列解包功能。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多