python学习笔记-定义函数

发布时间:2019-06-11 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了python学习笔记-定义函数脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

python中定义函数的关键词是def,例如定义一个叫my_function的函数我们可以这么定义, 其中括号内的xy为传入的参数。

def my_function():
    # function body

返回值

函数可以用关键字return返回数据。函数执行到return即返回不再执行函数。没用写return语句的函数,默认返回None
return None可以简写成return

空函数

如果想要定义一个什么都不做的函数,那么可以用pass语句。
例如

def do_nothing()
    pass

pass起的是占位符的作用。如果这个函数具体内容不需要定义就可以使用pass

参数检查

前一篇文章介绍过内置函数会对传入的参数的个数和数据类型进行检查。那么对于自定义函数,python是怎么处理的呢?
我们定义一个函数

def my_function(x,y):
    return x*y
  • 调用:my_function(1,2,3)

  • 报错:

Traceback (most recent call last):
  File "/Users/W/Code/Python/LearnPython/DataType.py", line 4, in <module>
    my_function(1,2,3)
TypeError: my_function() takes exactly 2 arguments (3 given)
  • 调用:my_function(1,"abc")

  • 报错:不返回错误信息。事实上我们希望my_function传入的两个参数应该是整数活着浮点数才对。

为函数添加参数检查

我们对my_function作一些改写。

def my_function(x, y):
    if not (isinstance((x,y),(int,float)) and isinstance(y,(int,float))):
        raise TypeError('Bad operand type')
    return x*y

时调my_function函数时传入错误的参数则会抛出TypeError

函数返回多个值

Python支持返回多个值。Python其实是通过返回一个tuple实现的。
我们可以通过简单的demo验证:

def func():
    return 2, 3
PRint func()

则会输出(2,3)这么一个tuple。
在语法上,返回一个tuple可以省略括号,即多个变量可以同时接收一个tuple,按位置赋给对应的值。例如
x,y = func()

脚本宝典总结

以上是脚本宝典为你收集整理的python学习笔记-定义函数全部内容,希望文章能够帮你解决python学习笔记-定义函数所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。