资料参考来源:https://www.cnblogs.com/haifeima/p/9595449.html

现在听到函数这两个字时还会头疼一会,因为我想到的是数学中的函数,但python中的函数不会很复杂,他就是用来调用的。

1.python中函数的定义:

   定义函数使用def关键字,后面是函数名,函数名不能重复

def fun():#定义一个函数,后面是函数名
    print("Hello World")#函数体

例如:

2. 函数的参数:

  形参和实参

函数在调用的时候,可以传入参数,有形参和实参,简单点说,形参就是函数接收的参数,而实参就是你实际传入的参数。

  • 形参:形参变量只有在被调用时才分配内存单元,在调用结束时,即刻释放所分配的内存单元。因此,形参只在函数内部有效。
  • 实参:实参可以是常量、变量、表达式、函数等,无论实参是何种类型的量,在进行函数调用时,它们都必须有确定的值,以便把这些值传送给形参。函数调用结束返回主调用函数后则不能再使用该形参变量。

def calc(x,y):#定义一个函数,参数有x和y,x和y就是形参
   print(x*y)#输出x乘以y的值
calc(5,2)#调用上面定义的函数,5和2就是实参

3.局部变量和全局变量:

  • 全局变量:就是定义在py文件中,能被任何函数、类能够正常访问的变量。
  • 局部变量:定义在函数内部变量,叫做局部变量
 注意:函数本身是对象,存储在堆中,但是函数的调用是在栈中调用,压栈
 

4.函数的返回值(return语句):

  • 每个函数都有返回值,如果没有在函数里面指定返回值的话,在python里面函数执行完之后,默认会返回一个None,函数也可以有多个返回值,如果有多个返回值的话,会把返回值都放到一个元组中,返回的是一个元组。
  • 为什么要有返回值呢,是因为在这个函数操作完之后,它的结果在后面的程序里面需要用到。
  • 函数中的返回值使用return,函数在遇到return就立即结束。

python中函数的初览的更多相关文章

  1. python 中函数的参数

    一.python中的函数参数形式 python中函数一般有四种表现形式: 1.def function(arg1, arg2, arg3...) 这种是python中最常见的一中函数参数定义形式,函数 ...

  2. python 中函数参数传递形式

    python中函数参数的传递是通过赋值来传递的.函数参数的使用又有俩个方面值得注意:1.函数参数是如何定义的 2.在调用函数的过程中参数是如何被解析 先看第一个问题,在python中函数参数的定义主要 ...

  3. python中函数的参数解析

    python中函数的各种参数梳理: 1.形参:函数定义时传入的参数 2.实参:函数调用时传入的参数 (有形参必传实参,形参里自身特点可不传的,可传可不传) 3.缺省参数:不传为默认值,传了会覆盖(下面 ...

  4. (转)python中函数参数中如果带有默认参数list的特殊情况

    在python中函数参数中如果带有默认参数list遇到问题 先看一段代码 1 2 3 4 5 6 7 8 9 def f(x,l=[]):     for i in range(x):         ...

  5. 学以致用三十二-----python中函数的括号使用

    一直以来对python中函数括号的使用,有点分不清楚,到底什么时候用括号,什么时候不用括号,造成了很大看困惑. 今天来总结下. class aaa(): y = 'you' def __init__( ...

  6. python中函数的参数

    函数参数(一) 思考一个问题,如下: 现在需要定义一个函数,这个函数能够完成2个数的加法运算,并且把结果打印出来,该怎样设计?下面的代码可以吗?有什么缺陷吗? def add2num(): a = 1 ...

  7. python中函数的定义和详细的使用方法

    1. 函数的概念,函数是将具有独立功能的代码块组织成为一个整体,使其具有特殊功能的代码集   2. 函数的作用,使用函数可以加强代码的复用性,提高程序编写的效率   3. 函数的使用,函数必须先创建才 ...

  8. Python中函数的参数传递与可变长参数

    转自旭东的博客原文 Python中函数的参数传递与可变长参数 Python中传递参数有以下几种类型: (1)像C++一样的默认缺省函数 (2)根据参数名传参数 (3)可变长度参数 示例如下: (1)默 ...

  9. python中函数参数传递的几种方法

    转自  http://www.douban.com/note/13413855/ Python中函数参数的传递是通过“赋值”来传递的.但这条规则只回答了函数参数传递的“战略问题”,并没有回答“战术问题 ...

随机推荐

  1. python 如何跳过异常继续执行

    使用try...except...语句,类似于if...else...,可以跳过异常继续执行程序,这是Python的优势 用法如下: 1 2 3 4 5 6 try:            # 可能会 ...

  2. Vim常用按键

  3. otter搭建

    转载: https://blog.csdn.net/inthat/article/details/93595156 https://www.cnblogs.com/Inspire-Yi/p/80943 ...

  4. websocket服务端开发

    基于http请求以拉的方式去做服务器的推送,无论是实时性和有效字节都是差强人意的效果. 公司的im系统在与客户端的交互上实际上借助了websocket来实现服务器与客户端的事实消息推送,今天就来简单了 ...

  5. Beta冲刺——用户测试报告

    这个作业属于哪个课程 软件工程 (福州大学至诚学院 - 计算机工程系) 这个作业要求在哪里 Beta 冲刺 这个作业的目标 团队进行Alpha冲刺 作业正文 正文 其他参考文献 无 用户测试报告 用户 ...

  6. Vmware无法生成本地连接

    打开Vmware使用乌班图 结果发现没有办法连接本地连接,那就是注册表出现了问题 今天推荐一个好软件 然后使用进行清理缓存,重新注册表 然后直接点击虚拟机里面的编辑->虚拟网络编辑器->把 ...

  7. Idea 查找加替换 功能

    本页查找 快捷键:ctr+F 鼠标框选 所需内容 再加快捷键 查找更加方便 替换功能

  8. GBK宽字节注入SQL

    SQL注入:宽字节注入(GBK双字节绕过) 2015-06-09lyiang 宽字节注入的作用是非常大的,实际上在代码层的防御一般不外乎两种,一是反斜杠转义,而就是replace替换成空字节,之前的替 ...

  9. cglib、orika、spring等bean copy工具性能测试和原理分析

    简介 在实际项目中,考虑到不同的数据使用者,我们经常要处理 VO.DTO.Entity.DO 等对象的转换,如果手动编写 setter/getter 方法一个个赋值,将非常繁琐且难维护.通常情况下,这 ...

  10. 剑指offer二刷——数组专题——构建乘积数组

    构建乘积数组 题目描述 给定一个数组A[0,1,...,n-1],请构建一个数组B[0,1,...,n-1],其中B中的元素B[i]=A[0]*A[1]*...*A[i-1]*A[i+1]*...*A ...