本节内容:
1. 什么是函数
2. 函数定义, 函数名, 函数体以及函数的调⽤
3. 函数的返回值
4. 函数的参数

一、什么是函数

我们可以先去定义一个事情或者功能(接口、服务、函数、功能). 等到需要的时候直接去用就好了.
那么这里定义的东西就是一个函数.
函数: 对功能或者动作的封装

二、函数的定义

def 函数名(形参列表):

函数体

函数体:函数被调用后,要执行的代码

函数的调用
函数名()

函数的调用执行过程

1、定义函数
2、调用函数
3、准备开始执行函数
4、执行函数体
5、函数体的代码执行完毕,本次调用完毕

问题:
函数调用后,需要得到一个结果--就是返回值(return)

三、函数的返回值

1、返回一个值
2、返回多个值(多个值之间用逗号隔开),多个值构成一个元组(调用者会接收一个元组),可以解构
3、return后面空白或者没有return,默认返回的是None
4、遇到return,其后面的代码就不会执行,函数执行会终止
      函数的return就类似于for循环中的break

问题:
有啥办法,可以使用不同的聊天工具,但是又不修改源代码呢?
--有办法,传递参数来解决

四、函数的参数

1、定义函数

def 函数名(形参列表):

函数体

2、调用函数

函数名(实参列表)

概念:

  • 形参:写在函数定义处的变量就是形式参数(简称-形参)
  • 实参:函数调用处给出的具体值就是实际参数(简称-实参)
  • 传参:函数调用过程中,把实参赋值给形参的过程就是传参

参数的分类
001 实参的分类

  • 1、位置参数:按照形参的位置顺序,传入实参--最常用
  • 2、关键字参数:不需要记住形参的位置顺序,只需要实参按照形参的关键字来传递即可

适用场景:形参列表比较长,形参的位置不好记忆的时候

  • 3、混合参数:

规则:必须是位置参数放在前面,关键字参数放在最后(否则,会报错)
例子:open('xxx.txt',mode='r',encoding='utf-8')

002 形参的分类

  • 1、位置参数:实参按照形参的位置顺序,传入--最常用
  • 2、默认值参数:

规则:位置参数必须在前面,默认值参数必须在最后(否则,会报错)
例子:
register(name,age,sex='男') #定义函数(适用场景:大部分学生是男的情况下,指定默认参数 sex='男')
register('jack',18) #调用函数1,参数3不写,使用默认参数-男
register('lucy',17,'女') #调用函数2 参数3-女 覆盖了默认参数

  • 3、动态参数(下节介绍 *arg,**kwargs)

Python【day 9】函数入门2的更多相关文章

  1. python之函数入门

    python之函数入门 一. 什么是函数 二. 函数定义, 函数名, 函数体以及函数的调用 三. 函数的返回值 四. 函数的参数 五.函数名->第一类对象 六.闭包 一,什么是函数 函数: 对代 ...

  2. 编程入门python之定义函数【转】

    编程入门python之定义函数 零基础学编程by学哥 2017-02-06 10:51 今天讲python函数. 输入参数求三角形或圆形或长方形的面积 先输入1个参数:形状类型 1=三角形 2=圆形 ...

  3. Python入门之 Python内置函数

    Python入门之 Python内置函数 函数就是以功能为导向,一个函数封装一个功能,那么Python将一些常用的功能(比如len)给我们封装成了一个一个的函数,供我们使用,他们不仅效率高(底层都是用 ...

  4. python函数入门

    知识内容: 1.函数的作用 2.函数的定义与调用 3.函数的返回值 4.函数的参数 5.局部变量与全局变量 6.作用域 一.函数的作用 1.复用代码 将可能重复执行的代码封装成函数,并在需要执行的地方 ...

  5. Python函数(入门6)

    转载请标明出处: http://www.cnblogs.com/why168888/p/6407970.html 本文出自:[Edwin博客园] Python函数 1. Python之调用函数 pri ...

  6. Python——函数入门(二)

    一.函数的参数 我们在定义函数时,可以定义形式参数(简称形参),这些形参的值在函数调用的时候才会确定,形参的值由调用者负责传入. 1.关键字参数 在Python中,函数的参数名并不是没有意义的,在调用 ...

  7. Python——函数入门(一)

    一.理解函数 举一个例子,当我们需要重复使用一个功能的时候,不可能每次都去复制一次代码,这个时候就需要用到函数了,所谓的函数,简单来说就是给函数取一个名字,当需要用到这个功能的时候,就可以通过这个名字 ...

  8. Python黑客编程2 入门demo--zip暴力破解

    Python黑客编程2 入门demo--zip暴力破解 上一篇文章,我们在Kali Linux中搭建了基本的Python开发环境,本篇文章为了拉近Python和大家的距离,我们写一个暴力破解zip包密 ...

  9. 【python】 web开发入门

    进入Web开发 现在你完成了Python忍者训练,准备深入Ptyhon的Web开发,但现在的问题是有很多的框架,从中选择最好的框架非常困难,但从初学者的角度出发,Flask基本Web框架将非常适合We ...

  10. Python云端系统开发入门——框架基础

    Django框架基础 这是我学习北京理工大学嵩天老师的<Python云端系统开发入门>课程的笔记,在此我特别感谢老师的精彩讲解和对我的引导. 1.Django简介与安装 Django是一个 ...

随机推荐

  1. [小程序]微信小程序登陆并获取用户信息

    1.小程序js端调用框架登陆API,获取到一个临时code,拿着这个code去调用自己的服务端接口 2.在自己的服务器端,使用app_id app_secrect code可以获取到用户的openid ...

  2. 使用阿里云生成的pem密钥登录

    我用的阿里云生成的ssh密钥,服务器上已有公钥,私钥为.pem文件,下载在本地,网上都说要转换为.ppk再用,其实用secure不必转换 一..pem和.ppk文件区别 .pem 密钥通用格式  .p ...

  3. POJ 1321 棋盘问题 题解

    棋盘问题 Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 70224 Accepted: 33254 Description 在一 ...

  4. SQLserver 《深入分析sqlserver 2008》

    PDF版本: 链接:https://pan.baidu.com/s/1bheII-EdyleVJaR5r9lT9Q 提取码:f8zz

  5. 如何fork自己的github库?

    Github上我们经常fork其他人的代码,然后经过一通魔改后弄出"自己"的东西.但是现在我遇到了这么一个需求,就是我已经公开了一个自己的库(暂且叫parent),然后我想基于自己 ...

  6. 201871020225-牟星源《面向对象程序设计(java)》第十一周学习总结

    201871020225-牟星源<面向对象程序设计(java)>第十一周学习总结 博文正文开头: 项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu ...

  7. AI AND THE BOTTOM LINE: 15 EXAMPLES OF ARTIFICIAL INTELLIGENCE IN FINANCE

    https://builtin.com/artificial-intelligence/ai-finance-banking-applications-companies f there's one ...

  8. 微信小程序单向数据流解决

    1. 小程序中没有vue中v-model一样的双向数据机制,并且小程序也不像vue那样的进行 实时的数据驱动视图. 小程序页面数据加载完成后再去改变data中的数据页面是 不会有变化的. 2. 解决: ...

  9. CF1175D Array Splitting

    题目链接 题意 给出一个长度为\(n\)的序列\(a\),要求分为恰好\(K\)段.第\(i\)个点的贡献是\(a_i \times f(i)\),\(f(x)\)表示x所属的是第几段. 思路 非常巧 ...

  10. 通过扫码打开IOS的App Store下载APP(Android版暂时没找到解决方法)

    项目需求:扫码根据不同平台下载不同版本的APP.主要是ios和Android. 网上找了很多,前面判断平台的代码很容易找到,但是后面的就有些坑了.有的人的是根本跑不通.有的是代码补全. 下面是 微信扫 ...