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

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

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学习笔记-定义函数相关推荐

  1. python函数是一段具有特定功能的语句组_Python学习笔记(五)函数和代码复用

    本文将为您描述Python学习笔记(五)函数和代码复用,具体完成步骤: 函数能提高应用的模块性,和代码的重复利用率.在很多高级语言中,都可以使用函数实现多种功能.在之前的学习中,相信你已经知道Pyth ...

  2. python定义函数的组成部分有_Python学习笔记之函数的定义和作用域实例详解

    本文实例讲述了Python函数的定义和作用域.分享给大家供大家参考,具体如下: 定义函数 默认参数: 可以向函数中添加默认参数,以便为在函数调用中未指定的参数提供默认值 # 如果调用 cylinder ...

  3. python通过封装可以实现代码复用_Python学习笔记(五)函数和代码复用

    函数能提高应用的模块性,和代码的重复利用率.在很多高级语言中,都可以使用函数实现多种功能.在之前的学习中,相信你已经知道Python提供了许多内建函数,比如print().同样,你也可以自己创建函数, ...

  4. python函数参数学习_python学习笔记-11.函数参数和返回值进阶

    1. 函数参数和返回值的作用 函数根据有没有参数以及有没有返回值,可以相互组合,共有4种形式: 无参数,无返回值 无参数,有返回值 有参数,无返回值 有参数,有返回值 定义函数时,是否接收参数,或者是 ...

  5. python定义一个空变量_Python 学习笔记 - Python 变量

    Python 变量 创建变量 变量是存储值的容器.Python 里没有专门的命令来声明变量.当把一个值赋给一个变量时,它就被创建了.如: x= 8 name = "空悟孙" 变量不 ...

  6. python用缩进来写模块_python学习笔记

    一.基础简介 1.#!/usr/bin/python #!/usr/bin/python 相当于写死了 python 路径 #!/usr/bin/env python 会去环境设置寻找 python ...

  7. python列表和元组的应用_python学习笔记之列表(list)与元组(tuple)详解

    前言 最近重新再看python的基础知识,感觉自己还是对于这些知识很陌生,需要用的时候还是需要翻书查阅,还是先注重基础吧--我要重新把python的教程阅读一遍,把以前自己忽略的部分学习,加强练习和记 ...

  8. python爬取基金历史净值_Python学习笔记之抓取某只基金历史净值数据实战案例

    摘要:这篇Python开发技术栏目下的"Python学习笔记之抓取某只基金历史净值数据实战案例",介绍的技术点是"Python学习笔记.Python.历史净值数据.学习笔 ...

  9. python三大结构、顺序结构_Python学习笔记3——三大结构:顺序,分支,循环3

    顺序 自上而下,依次执行 分支 分支的基本语法 if 条件表达式: 语句1 语句2 语句3 ...... 条件表达式就是计算结果必须为布尔值的表达式 表达式后面的冒号不能少 注意if后面的出现的语句, ...

最新文章

  1. Spring之定时任务基本使用篇
  2. TCP/IP、SOCKET、HTTP之间的联系与区别
  3. maven仓库阿里云镜像配置
  4. 聪明的程序员用Delphi,真正的程序员用C++,偷懒的程序员用PowerShell
  5. cron表达式详解 Elastic-Job名次解释
  6. 解决python最新版无法安装TensorFlow,导入TensorFlow
  7. 转载:28个Unix/Linux的命令行神器
  8. Linux 环境下Fortran程序连接使用Intel MKLPardiso解对称稀疏矩阵
  9. 2017中国之旅系列之九:山西平遥古城之旅
  10. C++系列中的一些修修补补
  11. 解读阿里云是干什么的?
  12. Android P 图形显示系统(八) SurfaceFlinger合成流程(三)
  13. 阿里巴巴一件代发怎么下单
  14. 跳台阶,有多少种跳法
  15. 流媒体2020最新研究场景与ideal
  16. HTML文字动画,缓慢浮入
  17. Java 获取年份-月份
  18. MacBook电池使用策略
  19. OpenWrt之网络配置文件(基于新三mt7621)
  20. 计算机开机没有找到引导设备,电脑开机显示没有可以引导的设备

热门文章

  1. python调研报告总结体会_调研报告心得体会
  2. 4位数的水仙花c语言,C语言程序设计100例之(4):水仙花数
  3. oracle 对象的审计,初识!聊聊ORACLE的审计功能
  4. p10可以适配鸿蒙吗,鸿蒙系统支持旧机型吗
  5. 怎么卡我的世界服务器物品,我的世界怎么卡服务器物品 | 手游网游页游攻略大全...
  6. 机械制图中外螺纹的画法_机械制图基础常识42条,条条都是经典!
  7. Flink AggOperatorWholeWin 全窗口聚合函数
  8. pytorch torch.full
  9. 3.5 定向搜索的误差分析
  10. 2.1 进行误差分析