码迷,mamicode.com
首页 > 其他好文 > 详细

4.1-函数的定义

时间:2017-03-22 00:29:21      阅读:160      评论:0      收藏:0      [点我收藏+]

标签:strong   doc   说明文档   math   数列   检验   blog   允许   int   

1 函数

  使用函数可以参照Python的官方说明文档

  https://docs.python.org/3/index.html

   

  常用的两个方法 abs和max, 分别表示取绝对值和最大值

  

  常用的类型转换函数有

    int()

    float()

    str()

    bool()

    其中bool()的使用范例如下

>>> bool(1)
True
>>> bool(‘‘)
False

2 函数的实质

  函数的实质就是一个函数对象的引用, 所以完全可以把这个函数名给一个变量,相当于给这个函数取了一个别名

>>> a = abs       # 变量a指向abs函数
>>> a(-1)           # 所以也可以通过a调用abs函数
1

3 定义函数

  定义方法:

    def 函数名(参数列表):

      函数体

      return

def my_abs(x):
    if x >= 0:
        return x
    else:
        return -x

  其中一定要注意, 函数体要写在缩进里面

  

  当没有return语句的时候, 函数执行完毕之后也会返回结果, 不过该结果为None

  return None就可以直接简写为 return

4 空函数

  有的时候在函数体里并不需要执行什么操作的时候, 可以用pass来表示

def nop():
    pass

5 类型检查

  函数在执行方法体之前, 应该先检查一下传入的参数是否符合类型要求, 增加函数的健壮性

  检查类型有一个方法 isinstance()

    isinstance(检验的变量, (允许的类型, 允许的类型))

def my_abs(x):
    if not isinstance(x, (int, float)):
        raise TypeError(‘bad operand type‘)
    if x >= 0:
        return x
    else:
        return -x

  如果变脸在类型列表中, 则返回True, 否则返回False

6 函数的返回值

  函数的返回值可以是一个, 也可以是多个, 多个的时候实际上是tuple类型

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)
151.96152422706632 70.0

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

 

4.1-函数的定义

标签:strong   doc   说明文档   math   数列   检验   blog   允许   int   

原文地址:http://www.cnblogs.com/weihuchao/p/6597478.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!