zoukankan      html  css  js  c++  java
  • 2017寒假零基础学习Python系列之函数之 返回多个值

      Python也和C语言一样有自己的标准库,不过在Python中叫做模块(module),这个和C语言中的头文件以及Java中的包类似,其中math就是其中之一,math模块中提供了sin()和cos()函数
    引用Python中模块(以引用math为例)的格式为:import math

    以一个计算游戏中坐标的例子来说吧:

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

    这样就可以同时获得返回值:

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

    是不是感觉这方面比C语言强多了?!

    其实这是一种“假象”,Python中返回的仍然是一个值!

    r = move(100,100,60,math.pi / 6)
    print r
    >>>151.96152422706632, 70.0

    真相是:用print打印返回结果,返回的值是一个tuple!

    总结:Python的函数返回多值其实就是返回一个tuple,但写起来更加方便

    小习题:
    一元二次方程的定义是:ax2 + bx + c = 0

    请编写一个函数,返回一元二次方程的两个解。

    注意:Python的math包提供了sqrt()函数用于计算平方根。

    代码:

    import math
    
    def quadratic_equation(a, b, c):
    
    x1 = (-b + math.sqrt(b*b - 4*a*c)) / (2*a)
    
    x2 = (-b - math.sqrt(b*b - 4*a*c)) / (2*a)
    
    return x1,x2
    
    print quadratic_equation(2, 3, 0)
    
    print quadratic_equation(1, -6, 5)
  • 相关阅读:
    golang 垃圾回收 gc
    LINUX下目标文件的BSS段、数据段、代码段
    使用Golang利用ectd实现一个分布式锁
    KNN算法介绍
    机器学习
    golang map to struct
    NoSQL数据库-MongoDB和Redis
    Go语言中的单引号、双引号、反引号
    广告制胜无它,顺应人性尔——leo鉴书63
    从周迅发布恋情 看百度百科的社会价值
  • 原文地址:https://www.cnblogs.com/dreamcoding/p/6371290.html
Copyright © 2011-2022 走看看