# 储备知识:
# 函数的使用应该分为两个明确的阶段
# 1. 定义阶段:只检测语法,不执行函数体代码
def func():
print('from func')
# 2. 调用阶段:会触发函数体代码的执行
# func() #先定义后调用
# 示范一
# def foo():
# print('from foo')
# bar()
# foo() # # 示范二:
# def bar():
# print('from bar')
#
# def foo():
# print('from foo')
# bar()
#
# foo() # # 示范三:
# def foo():
# print('from foo')
# bar()
#
# def bar():
# print('from bar')
#
# foo() # 示范四:
def foo():
print('from foo')
bar() foo() def bar():
print('from bar')
# return 值:
# 注意点:
# 1. 函数的返回值没有类型限制
# 2. 函数的返回值没有个数限制
# 2.1 返回多个值: 多个返回值用逗号分隔开,返回的是元组形式
# def func():
# print('from func')
# return 1,1.1,'hello',[1,2,3]
# # res=func()
# print(res,type(res))
# 2.2 返回1个值: 返回的就是该值本身
# def func():
# return 123
# res=func()
# print(res,type(res)) # 2.3 返回0个值或者干脆没有return: 返回None
# def func():
# return
# pass
# res=func()
# print(res) # return除了有返回值的功能,还有结束函数执行的的功能
# 函数内可以有多个return,但只要执行一次,整个函数就立即结束,并且将return后的值返回 def func():
print(1)
return
print(2)
return
print(3) func()
#一: 函数的参数分为两大类:
# 形式参数(形参): 在定义函数阶段,括号内定义的参数/变量名称为形参
# 实际参数(实参): 在调用函数阶段,括号内传入的值/变量值称为实参
# ps: 在调用函数阶段会将实参(值)的值绑定给形参(变量名),这种绑定关系只在调用函数时生效,在函数执行完毕后就会解除绑定
# def func(x,y): #x=1 y=2
# # x=1
# # y=2
# print(x,y)
#
# func(1,2)
#
# print(x)
# print(y) # 二: 细分:
# 1. 位置参数:
# 1.1 位置形参: 在定义阶段,按照从左到右的顺序依次定义的形参称之为位置形参
# 特点: 但凡时按照位置定义的形参, 必须被传值, 多一个不行少一个也不行
# def func(x,y,z):
# print(x,y,z) # func(1,2)
# func(1,2,3)
# func(1,2,3,4) # 1.2 位置实参: 在调用阶段,按照从左到右的 顺序依次 传入的值称之为位置实参
# 特点:
# 1. 与形参一一对应
# def func(x,y,z):
# print(x,y,z)
#
# func(2,1,3) # 2. 关键字实参: 在调用阶段,按照 key=value 的形式定义的实参称之为关键字实参
# 特点: 可以完全打乱顺序,但仍然能为指定的形参传值(总结:指名道姓地为指定的形参传值)
# def func(x,y,z):
# print(x,y,z) # func(x=1,y=2,z=3)
# func(1,2,3)
# func(z=3,y=2,x=1)
# 实参的形式可以是位置实参与关键字实参混合使用,但是必须遵循原则
# 1.位置实参必须放在关键字实参的前面
# 2.不能对同一个形参重复传值
# func(1,z=3,y=2)
# func(z=3,1,y=2) #错误
# func(1,z=3,x=2,y=3) #错误

Python开课复习10的更多相关文章

  1. Python开课复习-10/17

    pickle是一个用来序列化的模块序列化是什么?指的是将内存中的数据结构转化为一种中间格式 并存储到硬盘上 反序列化?将硬盘上存储的中间格式数据在还原为内存中的数据结构 为什么要序列化?就是为了将数据 ...

  2. Python开课复习-10/16

    import random # random 随机数模块 # print(random.random()) #----float 大于0且小于1之间的小数# print(random.choice([ ...

  3. Python开课复习-10/15

    #----------模块关键-------------------------------# if __name__=='__main__': # if 这个文件中加入这行代码# func1() # ...

  4. Python开课复习-10/10

    1. 什么时匿名函数def 定义 的是有名函数:特点是可以通过名字重复调用 def func(): #func = 函数的内存地址 pass匿名函数就是没有名字的函数:特点是只能在定义时使用一次 2. ...

  5. Python开课复习9-28

    一.什么是迭代器#迭代器即迭代的工具,那什么是迭代呢?#迭代是一个重复的过程,每次重复即一次迭代,并且每次迭代的结果都是下一次迭代的初始值 举例: l=[1,2,3] count=0 while co ...

  6. Python开课复习7

    操作系统 操作系统把复杂的硬件操作封装成简单的接口给用户/应用程序使用,其中文件就是操作系统提供给应用程序来操作硬盘虚拟概念,用户或应用程序通过操作文件,可以将自己的数据永久保存下来. #1. 打开文 ...

  7. Python并发复习1 - 多线程

    一.基本概念 程序: 指令集,静态, 进程: 当程序运行时,会创建进程,是操作系统资源分配的基本单位 线程: 进程的基本执行单元,每个进程至少包含一个线程,是任务调度和执行的基本单位 > 进程和 ...

  8. Building Python 2.7.10 with Visual Studio 2010 or 2015 - Google Chrome

    您的浏览器(Chrome 33) 需要更新.该浏览器有诸多安全漏洞,无法显示本网站的所有功能. 了解如何更新浏览器 × p-nand-q.com C++  Python  Programming  L ...

  9. python入门(10)使用List和tuple

    python入门(10)使用List和tuple list Python内置的一种数据类型是列表:list.list是一种有序的集合,可以随时添加和删除其中的元素. 比如,列出班里所有同学的名字,就可 ...

随机推荐

  1. CentOS ln 链接

    ln -s /u01/app/oracle/product/11.2.0/dbhome_1/bin/sqlplus/ /usr/bin (解决bash: sqlplus: command not fo ...

  2. e-olymp Problem11 Big accuracy

    传送门:点我 Big accuracy The rational fraction m/n is given. Write it in the decimal notation with k digi ...

  3. mysql中插入序列表

    利用序列表来实现列转行:CREATE TABLE sequence(id INT UNSIGNED NOT NULL auto_increment PRIMARY KEY)往里面插入数据 INSERT ...

  4. 填坑专记-手脱FSG壳

      妈呀,脱FGS壳真的是坎坷颇多,多亏吾爱破解前辈们的帮忙.我一定要记录下来,省的以后再无法解决.   已经查看是FSG壳了.找到入口也容易了.重点就是脱壳并修复好它. 脱壳   OEP为:   使 ...

  5. WIN7,安装所以软件都提示error writing temporary file

    执行: icacls C:\Users\Administrator\Desktop /setintegritylevel H

  6. css重要知识点

    1.float:left;表示靠左显示.它是相对于距离最近的且以relative作为position的父元素而言的. 2.块级元素和行内元素 块级元素:占据了一个矩形框的元素,display属性的值为 ...

  7. swift - 百度地图API集成

    1.百度搜索  百度地图api 2. 选中之后选择, 看功能需求下载 API 3. 下载的API拖入项目,此处有坑, 如果只用地图或者 定位,这中写着 是 导航的SDK 别拖进去, 不然报错 怕搞错到 ...

  8. 用Python监听鼠标和键盘事件

    PyHook是一个基于Python的“钩子”库,主要用于监听当前电脑上鼠标和键盘的事件.这个库依赖于另一个Python库PyWin32,如同名字所显示的,PyWin32只能运行在Windows平台,所 ...

  9. Socket(转自 阿里云)

    摘要:Socket-C/S Socket又称"套接字",应用程序 通常通过"套接字"向网络发出请求或者应答网络请求,使主机间或者一台计算机上的进程间可以通讯. ...

  10. vue-form表单验证插件

    参考地址:https://segmentfault.com/q/1010000003988864 github地址:https://github.com/fergaldoyle/vue-form 安装 ...