函数

一. 函数就是为了完成某一个特定的功能

形式参数不占运行空间,只有传入实参后才占,用完立刻释放空间。

函数一遇到 return 就结束掉了

函数名() :运行函数,有返回值的话用变量承接

def test(x):   # x称为形式参数#注释函数功能x += 1   #代码块return x   #返回值

例:

def test(x):y = 2 * x + 1return y
a = test(3)
print(a)

二、使用函数的好处

1. 代码的重用

2. 保持一致性,易维护

3. 可扩展性

def logger():    '日志功能'    passdef index():    logger()  #调用函数使用日志功能    print('index')def home():    logger()  #调用函数使用日志功能    print('home')

三、 函数和过程

过程就是没有返回值的函数

没有返回值(没有写return),返回None

返回一个值,返回object

返回多个值(return 0,1,2,3),返回tuple(0,1,2,3)

四、函数参数:

函数定义时也可以不传入形参,但要在函数体中给定值

def test():x = 2y = x ** 2return y
a = test()
print(a)

4.1 位置参数

要和形参一一对应,缺一不可,多一也不可

def test(x, y, z):print(x)print(y)print(z)
test(1, 2, 3)

4.2 关键字参数

位置无需固定,缺一不行,多一也不行

def test(x, y, z):print(x)print(y)print(z)
test(y = 1, x = 3, z = 2)

若混合使用,位置参数必须在关键字参数的左边

test(1, y = 2, 3)  #报错
test(1, 3, z = 2, y = 4)   #报错,y只能传一个值
test(1, 3, z = 2)   #正确

4.3 默认参数

def test(x, type = 'dabai'):print(x)print(type)
test(1)
test(1, '唉')  # 传入的实参会覆盖默认参数

五、参数组(非固定长度的参数)  *列表  **字典

*args 把位置参数处理成列表的形式

def test(x, *args):    print(x)    print(args)    print(args[0])test(1, 2, 3, 4, 5)

开发的时候,预留一个 *args 用来以后扩展时用,可以先不传入参数,不会报错

传入列表和字典时,把列表和字典当成一个整体作为了元组的第一个元素

def test(x, *args):print(x)print(args)
test(1, {'name': 'dabai'})
test(1, [2,3,5,6,7])

如果想把列表中的每一个元素都作为参数传给args  则用 *args

def test(x, *args):print(x)print(args)
test(1, *[2,3,5,6,7])

若是处理多个关键字参数,用 **kwargs

def test(x, **kwargs):print(x)print(kwargs)
test(1, y = 2, z = 3)

混合使用

def test(x, *args, **kwargs):print(x)print(args, args[1])print(kwargs, kwargs.get('z'))
test(1, 1, 2, 3, 4, 5, y=2, z=3)

def test(x, *args, **kwargs):print(x)print(args, args[1])print(kwargs, kwargs.get('z'))
test(1, *[1,2,3,4], **{'z': 1, 'y': 3})

转载于:https://www.cnblogs.com/dabai123/p/11027965.html

python课堂整理9---函数1相关推荐

  1. python课堂整理15---map, filter,reduce函数

    一.map函数 处理序列(可迭代对象)中的每一个元素,得到的结果是一个'列表'(其实是个迭代器),该'列表'元素个数及位置与原来一样 理解下面这段代码: num_l = [1, 2, 4, 6] de ...

  2. python常用函数-Python 学习:常用函数整理

    整理Python中常用的函数 一,把字符串形式的list转换为list 使用ast模块中的literal_eval函数来实现,把字符串形式的list转换为Python的基础类型list from as ...

  3. Python最常用的函数、基础语句有哪些?

    作者 | 朱卫军 来源 | Python大数据分析 Python有很多好用的函数和模块,这里给大家整理下我常用的一些方法及语句. 一.内置函数 内置函数是python自带的函数方法,拿来就可以用,比方 ...

  4. 文科生学python系列_文科生学 Python 系列 3:函数

    文科生学Python系列3:函数​www.jianshu.com 还是第二课的内容 函数是一段可以重复使用的代码,往往是为了解决某个特定的人物.在 Python 中有两种函数:内置函数和自定义函数. ...

  5. python库整理目录

     zip与zip(*)_刘文巾的博客-CSDN博客 python函数整理_刘文巾的博客-CSDN博客 python笔记:正则表达式_刘文巾的博客-CSDN博客 python笔记:深拷贝与浅拷贝_刘文巾 ...

  6. Python:高阶函数

    前言 最近在学习深度学习,已经跑出了几个模型,但Pyhton的基础不够扎实,因此,开始补习Python了,大家都推荐廖雪峰的课程,因此,开始了学习,但光学有没有用,还要和大家讨论一下,因此,写下这些帖 ...

  7. python四大高阶函数求导_4个python常用高阶函数的使用方法

    1.map Python内建了map()函数,map()函数接受两个参数,一个是函数,一个是Iterable,map将传入的函数依次作用到序列的每一个元素上,并把结果作为新的Iterator返回. 举 ...

  8. Python模块内置函数

    一.任务描述   本实验任务主要完成对Python模块内置函数进行一些基本操作,通过完成本实验任务,要求学生熟练掌握Python模块内置函数,并对Python内置函数的基本操作进行整理并填写工作任务报 ...

  9. Python模块整理(四):线程模块threading

    参考网络以及python书籍整理 一.Python threading三种调用方式介绍: Thread 是threading模块中最重要的类之一,可以使用它来创建线程. 第一种方式:创建一个threa ...

最新文章

  1. 如何做到尽可能不使用庞大的jQuery
  2. OpenGL transformation变换的实例
  3. zabbix JMX监控 tomcat
  4. 自定义Spring命名空间使JAXB更容易
  5. 超文本标记语言HTML
  6. Autolayout屏幕适配——代码实现(苹果公司 / VFL语言 / 第三方框架Masonry)
  7. 尽点力,虽然也不一定有用
  8. 用户帐户控制---为了对电脑进行保护,已经阻止此应用。---管理员已阻止你运行此应。有关详细信息,请与管理员联系。
  9. ffmpeg添加自定义硬件编解码器
  10. Python读取文本内容
  11. Strut2的工作流程
  12. wordpress目录不分层级方法!去掉WordPress目录链接中category?目录在根目录
  13. 排座系统c语言,2008noip排座位C语言详解.doc
  14. Java的小tips(1) ------关于“Java :找不到符号”类问题的解读
  15. 创建easyui的右键菜单(onRowContextMenu)
  16. win10 桌面颜色变成灰色
  17. mac版Mysql可视化工具 - Sequel Pro
  18. 手把手教你solidworks重力下落物体动画制作
  19. 解析法实现多元线性回归的实例
  20. 新书字码的差不多了,想众包几个事情

热门文章

  1. fatal: unable to access ‘https://github.com/***.git/‘: OpenSSL SSL_read: Connection was reset, errno
  2. Martix工作室考核题 —— 打印一个菱形
  3. 【工业控制】激光跟踪仪概述
  4. 【Linux】一步一步学Linux——ssh-copy-id命令(180)
  5. 【Qt教程】Qt常用部件介绍
  6. python每天一个小程序_Python 练习册,每天一个小程序----第0000题
  7. java 最新sql注入原因以及预防方案(易理解)
  8. 进程间通信--信号(SIG)
  9. c语言程序设计教案 文库,C语言程序设计教案.doc
  10. c++面向对象三大特征封装、继承和多态知识总结