龙空技术网

Python函数

XQssq 253

前言:

现在同学们对“python不定长参数”可能比较注重,朋友们都需要剖析一些“python不定长参数”的相关内容。那么小编同时在网摘上收集了一些有关“python不定长参数””的相关知识,希望兄弟们能喜欢,看官们一起来了解一下吧!

函数的作用:减少重复的代码,提高代码的复用性

函数的定义和调用

def function():

(缩进)return 变量

def是关键字

function是函数名

()括号内是参数

return返回的值是可以把值赋值变量,结束函数

函数的参数

def function1(x,y=10,*args,**kwargs):(缩进)print(x)

(缩进)print(y)

(缩进)print(args)

(缩进)print(kwargs)

x为必备参数,需要传值,不传值需要报错

y为默认参数,可以不传值,如果说传值,将会改变默认值

不定长参数:*args元组不定长;**kwargs字典不定长,形式num(a=8,k='你好')

一个*为元组不定长

两个**为字典不定长

函数的作用域

函数外定义的变量叫做全局变量,在函数里是不可以改变全局变量的,不可改变的对象有:数值,字符串,元组(函数不会改变传入的不可变对象

函数内部定义的变量在函数外部是不可以使用的叫做局部变量

在函数里不可修改函数外定义的数值类型

global声明局部变量

如果想要在函数内部改变外面不可变对象的值,则需要在函数内部使用global关键字

例如

x=100

def number():

(缩进)global x

(缩进)x=x+1

(缩进)print(x)

如果说 number(101)程序将不会报错

但是只要没有global声明程序将会发生报错

nonlocal关键字

如果是嵌套函数,则不能使用global,需要使用nonlocal关键字

注:如果说嵌套函数用nonlocal

没有嵌套函数用global

函数作用域的闭包

函数的递归

相当于是内部函数调用自己,类似于while循环,也需要一个结束循环的条件,否则超出了将会报错

匿名函数lambda 自带return

filter过滤器以函数体为标准,筛选出数据

例:

f=filter(funx,li)>>(函数体,一个列表)

print(list(f))

li=[i for i in range(1,11)]

def funx2(x):

(缩进) return x*10

(缩进)m=map(funx2,li)

(缩进)print(list(m))

最后两排可以直接等于

li=[i for i in range(1,11)]

def funx2(x):

(缩进)m=map(lambda x:x*10,li)

(缩进)print(list(m))

有错误希望大家积极指出,我也将认真改正

欢迎大家评论点赞加关注

谢谢

标签: #python不定长参数