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)
  • 相关阅读:
    jquery1.9之学习笔记
    ERROR: Removing 'hello': Device or resource busy
    windows虚拟机性能调整
    kvm虚拟机控制台登录配置
    KVM虚拟机的管理
    window kvm 虚拟机的创建
    kvm虚拟化环境的搭建
    C实现哈希表
    哲学家就餐问题 C语言实现
    Linux面试题
  • 原文地址:https://www.cnblogs.com/dreamcoding/p/6371290.html
Copyright © 2011-2022 走看看