一、函数分类

(1)内置函数。Python语言内置了若干常用的函数,例如abs()、len()等等,在程序中可以直接使用。

(2)标准库函数。Python语言安装程序同时会安装若干标准库,例如math、random等等。通过import语句,可以导入标准库,然后使用其中定义的函数。

(3)第三方库函数。Python社区提供了许多其他高质量的库,如Python图像库等等。下载安装这些库后,通过import语句,可以导入库,然后使用其中定义的函数。

(4)用户自定义函数。本章将详细讨论函数的定义和调用方法。

二、函数基本形式

def 函数名([参数列表]):

‘’‘注释’’’

函数体

例如:

def main():

print('hello')

main()

注意事项

函数形参不需要声明类型,也不需要指定函数返回值类型

即使该函数不需要接收任何参数,也必须保留一对空的圆括号

括号后面的冒号必不可少

函数体相对于 def 关键字必须保持一定的空格缩进

Python允许嵌套定义函数

三、形参与实参

1、定义理解

形参出现在函数定义中,在整个函数体内都可以使用, 离开该函数则不能使用。

实参出现在主调函数中,进入被调函数后,实参变量也不能使用。

1、形参只是在函数定义时使用;

2、实参是在函数调用时赋予的实际数值;

def ad(x,y): #此时x,y是形参,ad是被调函数

c = x + y

return c

def main():

a=1 #此处a,b是实参

b=2 #此处a,b是实参

d = ad(a,b) #此处a,b是实参,a.b在主调函数main中可以使用,但在被调函数ad中只能用x,y

print(d)

main()

函数定义时小括号内为形参,形参不需要声明类型,一个函数可以没有形参,但是小括号必须要有,表示该函数不接受参数。参数个数并没有限制,若有多个形参,需要使用逗号进行分割。

函数调用时向其传递实参,将实参的值或引用传递给形参。

2、改变形对实参的影响

(1)对于绝大多数情况下,在函数内部直接修改形参的值不会影响实参。

样例:

def change(n):

n+=1

print('a通过函数change改变后的值:',n)

def main():

a=1

print('a的初始默认值:',a)

change(a)

print('验证a的实参值是否被函数中形参所影响:',a)

main()

运行结果是:

a的初始默认值: 1

a通过函数change改变后的值: 2

验证a的实参值是否被函数中形参所影响: 1

可见函数内部直接修改形参的值不会影响实参

(2)如果传递给函数的是可变序列,并且在函数内部使用下标或可变序列自身的方法增加、删除元素或修改元素时,修改后的结果是可以反映到函数之外的,实参也得到相应的修改。

样例:

def change(n):

b=[4,5,6]

n.extend(b)

print('a通过函数change改变后的值:',n)

def main():

a=[1,2,3]

print('a的初始默认值:',a)

change(a)

print('验证a的实参值是否被函数中形参所影响:',a)

main()

运行结果是:

a的初始默认值: [1, 2, 3]

a通过函数change改变后的值: [1, 2, 3, 4, 5, 6]

验证a的实参值是否被函数中形参所影响: [1, 2, 3, 4, 5, 6] #程序猿用事实说话,懂了吧!

四、参数类型

在 Python 中,函数参数有很多种:可以为普通参数、默认值参数、关键字参数、可变长度参数等等。

Python 在定义函数时不需要指定形参的类型,完全由调用者传递的实参类型以及 Python 解释器的理解和推断来决定,类似于重载和泛型。

Python 函数定义时也不需要

python中、函数定义可以不包括以下一对圆括号_Python函数的基础学习相关推荐

  1. python设计一个函数定义计算并返回n价调和函数_python函数的调和平均值?

    我有两个函数,给出精度和召回分数,我需要做一个调和平均函数,定义在同一个库中,使用这两个分数.函数如下所示: 功能如下:def precision(ref, hyp): ""&qu ...

  2. Python中lambda详解(包括内置函数map、reduce、filter、sorted、max)

    文章目录 一.lambda是什么? 1.lambda语法 2.语法详解 二.lambda的使用 1.定义 2.调用 3.替换 4.作返回值 三.lambda作参数 1.map函数 2.reduce函数 ...

  3. Python中如何定义一个函数

    任何编程语言知识它的基础知识都是有些枯燥的,我们一定要多练习, 多实践.下面小编来将一下Python中如何定义一个函数. 最后,如果你的时间不是很紧张,并且又想快速的提高,最重要的是不怕吃苦,建议你可 ...

  4. python中类方法与实例方法的区别-Python中的对象,方法,类,实例,函数用法分析...

    本文实例分析了Python中的对象,方法,类,实例,函数用法.分享给大家供大家参考.具体分析如下: Python是一个完全面向对象的语言.不仅实例是对象,类,函数,方法也都是对象. class Foo ...

  5. python定义类的程序_python扫码签到程序python中如何定义类

    什么是类? 用来描述具有相同的属性和方法的对象的集合.它定义了该集合中每个对象所共有的属性和方法.对象是类的实例. 什么是方法? 类中的函数即为方法 如何定义一个类? 定义类,语法格式如下: < ...

  6. Php扫码签到功能怎么实现,python扫码签到程序python中如何定义类

    什么是类? 用来描述具有相同的属性和方法的对象的集合.它定义了该集合中每个对象所共有的属性和方法.对象是类的实例. 什么是方法? 类中的函数即为方法 如何定义一个类? 定义类,语法格式如下: < ...

  7. python的input添加变量_在python中如何定义一个全局变量raw_input() 与 input()的区别...

    raw_input和input两个均是 python 的内建函数,通过读取控制台的输入与用户实现交互.但他们的功能不尽相同.下面举两个例子,来说明两者使用上的不同. 例子1Python 2.7.5 ( ...

  8. python函数返回值可以有多个吗_Python函数中如何返回多个值?(代码示例)

    在Python中,我们可以通过多种方法,从一个函数中返回多个值.下面本篇文章就来给大家介绍一下从一个函数中返回多个值的方法,希望对大家有所帮助. 方法一:使用Object 这类似于C / C ++和J ...

  9. python中定义类的关键字,在Python中,定义类的关键字是

    在Python中,定义类的关键字是 答:class; 劳动生产率分为:实物劳动生产率.工时劳动生产率.货币劳动生产率. 答:正确 总的来说,全球通用卡交易金额.交易笔数在近十年来,低于全球经济的增速 ...

最新文章

  1. PostgreSQL_row_number() over()
  2. PHP 简单的数字过滤函数
  3. 字节流代码 java_java代码字符字节流
  4. 位操作:BitVector32结构 z
  5. mysql 2进制 安装_mysql二进制安装
  6. java程序中没有错,但是项目上面显示一个红叉的解决办法
  7. java地狱猫_ES6 ES6变量的声明
  8. 美登杯”上海市高校大学生程序设计邀请赛 Problem E 、 小 花梨 的数组 (线段树)...
  9. ubuntu for win10 里运行apache+php
  10. cad计算机绘图入门,【菜鸟宝典】AutoCAD制图入门教学!
  11. chm转过程html,Word文档转换成chm技巧
  12. 使用多种方法在Word方框中打对勾√和叉叉×
  13. 大数据比较 同比与环比的区别
  14. 在线付费问诊互联网医院智慧医疗系统包含哪些功能
  15. Matlab求出图像中每个细胞的细胞核与核仁面积之比代码
  16. 柔性电子:动态识别物理信号的柔性聚合物传感器
  17. 2021年10月-精品总结汇报PPT模板-15套
  18. 瑞萨e2studio(8)----PWM
  19. 前端html页面中的命名规范
  20. FCKeditor相关问题

热门文章

  1. D大调卡农,一定要学会它.
  2. 年龄Age的计算(可以精确到1岁3个月10天)
  3. 诚之和:今年市值蒸发2323亿港元,海底捞关店的真正原因是什么?
  4. 【C语言】常量和变量
  5. C语言实现strlen
  6. linux查看进程的cpu和内存利用率
  7. 会员系统之优惠券营销策略
  8. 12.1 剪贴板的简单用法
  9. iOS Pod 导入第三方库,如:Alamofire、HandyJSON
  10. setTimeout是否阻塞