美文网首页
python的函数多返回值的假象及与golang的函数多返回值的

python的函数多返回值的假象及与golang的函数多返回值的

作者: 舒小贱 | 来源:发表于2017-12-15 17:47 被阅读0次

golang中函数可以有多个返回值,python可以吗,答案是肯定的。

import math
def move(x, y, step, angle=0):
    nx = x + step*math.cos(angle)
    ny = y - step*math.sin(angle)
    return nx, ny
    

x, y = move(100, 100, 60, math.pi/6)
print(x, y)

运行结果:

E:\python_study>python 1.py
(151.96152422706632, 70.0)

但其实这是一种假象,函数返回的仍然是单一值:

import math
def move(x, y, step, angle=0):
    nx = x + step*math.cos(angle)
    ny = y - step*math.sin(angle)
    return nx, ny
    

x, y = move(100, 100, 60, math.pi/6)
print(x, y)

val = move(100, 100, 60, math.pi/6)
print(val)

运行结果:

E:\python_study>python 1.py
(151.96152422706632, 70.0)
(151.96152422706632, 70.0)

原来:函数返回值是单个tuple,只是多个变量可以同时接收一个tuple,并按位置赋值。所以python的函数多返回值其实是假的
而golang由于是强类型语言,函数调用的接收个数和函数返回值个数必须一致,所以不存在这个现象。

参考:定义函数

相关文章

  • python的函数多返回值的假象及与golang的函数多返回值的

    golang中函数可以有多个返回值,python可以吗,答案是肯定的。 运行结果: 但其实这是一种假象,函数返回的...

  • Swift-函数

    函数的定义与调用 无参数函数,有返回值(返回值类型String) 多参数函数,有返回值(返回值类型String) ...

  • swift学习笔记(6)--- 函数

    1、函数的定义与调用 2、函数参数与返回值 无参数函数 多参数函数 无返回值函数 多重返回值函数 可选元组返回类型...

  • golang笔记——异常处理

    函数返回值处理异常 golang为了避免像写Java一样滥用try catch,可以使用函数多返回值的特性来进行异...

  • 不论BAT大神,还是开发小担当都必须会的Python知识点

    Python函数示例:调用,缩进,参数和返回值 什么是Python中的函数? Python中的函数用于在程序中的多...

  • 函数

    函数初识 函数的参数 函数的多个参数 可变参数 参数传递 函数的返回值 函数的多返回值 return语句 函数中变...

  • 6_函数

    函数参数与返回值 无参数函数 多参数函数 无返回值函数 省略返回箭头(->)和返回类型。 注意严格上来说,虽然没有...

  • Day7-函数

    1、函数的返回值 1.1 函数的返回值: python 中每个函数都是有返回值的,返回值就是return 后面的值...

  • go-day2

    函数 函数的定义 基本格式 参数的格式 有参数的函数 参数类型简写 可变参数 返回值的格式 有返回值 多返回值 命...

  • day 9

    part 1 函数回顾 part 2 函数的返回值 1、 python 每个函数都有返回值,返回值就是return...

网友评论

      本文标题:python的函数多返回值的假象及与golang的函数多返回值的

      本文链接:https://www.haomeiwen.com/subject/axbdwxtx.html