博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
神奇的python系列8:函数(一)
阅读量:5311 次
发布时间:2019-06-14

本文共 2549 字,大约阅读时间需要 8 分钟。

1 认识函数

什么是函数?

定义一个事情或者是功能,等到需要的时候直接去用就好了.那么这里定义东西就是一个函数。

函数:对代码块和功能的封装和定义。

2 定义函数

函数的基本结构:

def 函数名():    函数体

我们使用def关键字来定义函数,函数的定义语法,这里的函数名的命名规则和变量的命名规则一样。

def make():    print('拿出手机')    print('拿出微信')    print('看看附近的人')    print('美女,约架吗?')    print('约,走起!')

这里只定义了一个函数.但是还没有执行过这个函数.

3 调用函数

使用函数名加小括号就可以调用了  写法:函数名()  这个时候函数的函数体会被执行。

函数的调用:# 函数 + 小括号  == 调用func()
def make():    print('拿出手机')    print('拿出微信')    print('看看附近的人')    print('美女,约架吗?')    print('约,走起!')make()   # 函数名 + 小括号  ==  调用

4 函数的执行流程

def make():  #1    print('拿出手机')  #3    print('拿出微信')  #4    print('看看附近的人')  #5    print('美女,约架吗?')  #6    print('约,走起!')  #6make()  #2   # 函数名 + 小括号  ==  调用

5 函数的返回值

执行完函数之后,我们可以使用return来返回结果.

def func():    print('今天是周二')    return '1-9'    print('明天是周三')    return '1-8'    print('后天是周四')    print('大后天是周五')    print('大大后天是周六')# 函数中当执行到return的时候就结束了,return以下代码都不执行,并且终止这个函数print(func())

1.遇到return,此函数结束,函数后面的东西将不会在执行;

2.return 返回值

 关于返回值:

   如果return什么都不写或者干脆就没写return,返回的结果就是None;

   如果return后面写了一个值,则调用者可以接受一个结果;

           return 可以返回随意数据;

   如果return后面写了多个结果,则调用者可以接受一个tuple,调用者可以直接使用解构获取多个变量。

6 函数的参数

参数,也就是函数括号里的内容 函数在调用的时候指定一个具体的变量的值 就是参数.

1.形参:写在函数声明的位置的变量叫形参,形式上的一个完整.表示这个函数需要xxx

2.实参:在函数调用的时候给函数传递的值.加实参,实际执行的时候给函数传递的信息.表示给函数xxx

3.传参:给函数传递信息的时候将实际参数交给形式参数的过程被称为传参.。

def make(chat):    # chat  定义的参数是形参       print("拿出手机")       print("打开"+chat)       print("找个漂亮的妹子")       print("约不约")     make("陌陌")    # 调用的参数是实参  形参和实参的数量 一一对应len("字符串")    # "字符串"在这⾥里里就是实参print("麻花藤")    # "麻花藤"就是实参 

参数分类:

实参的角度:

func('清华','东莞')                            位置参数

def make(chat,addr,age):    # chat  形参    pass make("清华","东莞",18)    # 实参

在访问make()的时候,我们按照位置的顺序分别把"陌陌","北京",18赋值给了

chat,addr,age,在传参过程中.系统会按照位置吧实参赋值到形参。

 

func(msg = '清华',addr = '东莞')   关键字参数

def make(chat, address, age):    pass make(chat="清华", age=18, address="东莞")       # 关键字参数.

python提出了一种叫做关键字参数. 我们不需要记住每个参数的位置. 只要记住每个参数的名字就可以了。

 

func('清华',addr='清华')                混合参数

def make(chat, address, age):    pass make("清华",age="18", address="东莞") # 关键字参数.

注意: 在使用混合参数的时候, 关键字参数必须在位置参数后面.

可以把上面两种参数混合着使用. 也就是说在调用函数的时候即可以给出位置参数, 也可以指定关键字参数。

 

def func(school='清华')            默认值参数

def stu_info(name, age, sex='男'):    #默认参数    pass stu_info("张强", 18)

在函数声明的时候, 就可以给出函数参数的默认值. 在调用的时候可以 给出具体的值, 也可以不给值, 使⽤用默认值.

注意:必须先声明在位置参数,才能声明关键字参数

 

参数的顺序: 位置参数 > 默认参数(关键字参数),在默认参数前边写位置参数

函数形参的规则 位置参数 > 默认参数

函数形实参的规则 位置参数 > 关键字参数

 

总结:

实参的角度:

func('清华','东莞')    位置
func(msg = '清华',school = '东莞')   关键字
func('清华',school='清华')   混合

 

形参的角度:

def fucn(msg,school)    位置
def func(school='清华')   默认参数
def func(msg,school='清华')    混合

 

转载于:https://www.cnblogs.com/xianyuwangzhe/p/10257429.html

你可能感兴趣的文章
Leetcode 589. N-ary Tree Preorder Traversal
查看>>
机器学习/深度学习/其他开发环境搭建记录
查看>>
xml.exist() 实例演示
查看>>
判断是否为空然后赋值
查看>>
zabbix监控日志文件
查看>>
正则表达式
查看>>
pip install torch on windows, and the 'from torch._C import * ImportError: DLL load failed:' s...
查看>>
java基础(一):我对java的三个环境变量的简单理解和配置
查看>>
arcgis api 4.x for js 结合 Echarts4 实现散点图效果(附源码下载)
查看>>
YTU 2625: B 构造函数和析构函数
查看>>
apache自带压力测试工具ab的使用及解析
查看>>
C#使用Xamarin开发可移植移动应用(2.Xamarin.Forms布局,本篇很长,注意)附源码
查看>>
jenkins搭建
查看>>
C#中使用Split分隔字符串的技巧
查看>>
eclipse的调试方法的简单介绍
查看>>
加固linux
查看>>
IPSP问题
查看>>
10.17动手动脑
查看>>
WPF中Image显示本地图片
查看>>
Windows Phone 7你不知道的8件事
查看>>