python函数不包括_Python——函数(一)

函数

前言:

函数在python中算是一个比较大的话题了,涉及的内容也比较多。当我们慢慢学习在

为什么会有函数这个东西?

函数(function),与数学中的函数是不同的概念。

编程中的函数,具体是来说,用来实现一些特定功能的代码段组成的一个整体。

因此,当我们想要实一现个具体的功能的时候,就可才考虑用函数的逻辑去报他们分门别类的去实现与管理。

内容提要

函数的定义方法

函数的参数及分类

几种特殊的函数

内容详情

函数定义

def 函数名(参数列表):

函数体

定义就是这么简单粗暴。

函数参数

python中函数的参数内容比较多, 我们一一来请解

2.1 不含参:

def func():

pass

不含参的函数,在类的外面,还是比较少见的,一般都用于类内部,作为类的文法比较常见。

2.1 常规参数/命名参数

# 定义函数

def func2(a, b):

print(a,b)

# 调用函数

func(2,3) # 会打印2, 3,常规参数如果不写参数名,会按顺序赋值给相应的变量

# 还可以这样调用:

func(b=3, a=2) # 也会打印2, 3 , 当我们用参数名直接赋值的时候,可以忽略参数的顺序.

2.2 默认值参数

# 定义函数,参数b有一个默认值2

def func(a,b =2):

print(a,b)

# 函数调用

# 正常调用

func(2,3) # 输出2, ,3

# 省略b的值

func(1) # 输出1, 2 ,当没有传够参数的时候有默认值的参数,会自己动用默认值

注意:

默认参数要定义在必须参数之后

2.3 不定长参数

# 不定长参数需要在参数名前加*

# 函数定义

def func2(a,b, *c):

print(a,b)

print(c)

def func2(a,b=2,*c):

print(a,b)

print(c)

# 函数调用

func2(2,3,4,5,6,7) # 输出第一行2,3 第二行(4,5,6,7)

func3(2,3,4,5,6,7) # 输出第一行2,3 第二行(4,5,6,7)

注意:

命名参数必须在不定长参数之前

不定长参数其实是以元组的形式传入函数的,元组的名称就是我们定义的时候的*后面的名字

有默认值参数,默认值参数也必须的不定长参数之前,当参数个数>必须参数与默认参数个数时,会按照顺序给到必须参数与默认参数,然后多余的参数才会传入不定长参数

不定长参数最多只能有一个

不定长参数的参数名通常用args.

2.4 关键字参数

# 定义函数,用到了必须参数, 默认值 参数, 不定长参数与关键字参数

# 关键字参数在参数名+ **

def fuc4(a,b=2,*c, **d):

print(a,b)

print(c)

print(d)

# 函数调用

func4(2,3,5,6,7,name ="tome" ,age =4)

输出内容:

2 3 # a =2 , b =3

(5, 6, 7) # 元组c = (5,6,7)

{'name': 'tome', 'age': 4} # 关键字参数d = {"name": "tome", "age" :4}

注意:

关键字参数的本质是一个字典

关键字数要在不定长参数之后

总结:

Python中函数的参数有四种:

必须参数

默认值参数

不定长参数

关键词参数

在定义函数时,如果同时存在两种及以上类型的参数时,其顺序是:

(1) 必须参数,可以有多个

(2) 默认值参数,可以有多个

(3) 不定长参数 ,只能有一个

(4) 关键词参数, 只能一个个

在调用函数时,如果有多个类型的参数,其参数赋值:

(1) 必须参数

(2) 如果没有不定长参数,则默认值 参数可以省略

如果有不定长参数,则先赋值默认值参数,多余的参数传入不定长参数,作为元组的元素

(3) 如果有关键字参数,则命名参数必须先赋值,否则会与关键字参数冲突.(即关键字参数的关键字不能与前面的命名参数的名字是一样的)

后记

python中的函数参数类型灵活多变.

需要在使用的时候,多多体会不同的参数类型给予使用者的方便.

函数中还有一种比较特殊的函数类型(被Python之父都嫌弃的函数类型):lambda函数(蓝达).以后再讲吧.它不属于正常的函数.使用场合也比较特殊.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值