python模块6函数

模块6

函数

6.1函数概述

函数是组织好的、实现单一功能或相关联功能的代码段。

可以在需要的地方以“函数名()”的形式调用。

函数的优点:1.将程序模块化,既减少了冗余代码,又让程序结构更为清晰、2.提高开发人员的编程效率、3方便后期的维护与扩展

6.2.1定义函数

Python中使用关键字def来定义函数,其语法格式如下:

 6.2.2调用函数

函数在定义完成后不会立刻执行,直到被程序调用时才会执行

 语法格式:函数名(参数列表)

函数内部也可以调用其他函数,这被称为函数的嵌套调用

函数在定义时可以在其内部嵌套定义另外一个函数,此时嵌套的函数称为外层函数,被嵌套的函数称为内层函数

def add():
    result=10+20
    print(result)
def add_modify(a,b):
    result=a+b
    add()
    print(result)
# a=add()
c=add_modify(10,78)
def get_max(a,b):
    if a>b:
     print(a,"较大值")
    else:
     print(b,"较大值")
b=get_max(8,5)

 6.3函数的传递

形参:定义函数时设置的内置参数

实参:调用函数时传入的参数

参数的传递:是指将实际参数传递给形式参数的过程。

 函数参数的传递可以分为位置参数传递、关键字参数传递、默认参数传递、参数的打包与解包以及混合传递。

 6.4参数的打包和解包

1.打包——"**"

 2.解包

 6.5局部变量和全局变量

根据作用域不同,变量可以划分为局部变量和全局变量。

1.局部变量

不同函数内部可以包含同名局部变量,这些局部变量的关系类似于不同目录下同名文件的关系,它们相互独立,互不影响

2.全局变量

全局变量可以在整个程序范围内起作用,它不会受到函数范围的影响

全局变量在函数内部只能访问,而无法直接修改

 6.6 global和nonlocal关键字

1, 使用global关键字可以将局部变量声明为全局变量,其使用方法如下:

global 变量

2.使用nonlocal关键字可以在局部作用域中修改嵌套作用域中定义的变量,其使用方法如下:onlocal关键字

 6.7递归函数

 6.7.1递归函数

1.递推:递归本次的执行都基于上一次的运算结果。

 2.回溯:遇到终止条件时,则沿着递推往回一级一级地把值返回来。

格式如下

 

# def connect(ip,port=8080):
#     print(f"shebei{ip}:{port}连接!")
# connect(ip="127.0.0.1")
# connect(ip="127.0.0.1",port=3306)
# 打包(一个*元组,两个**字典)
# def test(*args):
#     print(args)
# test(11,22,33,44,55)
# def test(**kwargs):
#     print(kwargs)
# # test(a=11,b=22,c=33,d=44,e=55)
#报错 test(11,22,33,44,55)
# 解包(一个*元组,两个**字典)
# def test1(a,b,c,d,e):
#     print(a,b,c,d,e)
# nums=(11,22,33,44,55)
# test1(*nums)
# nums1={"a":11,"b":22,"c":33,"d":44,"e":55}
# test1(**nums1)
# 混合传递
# def test(a,b,c=33,*args,**kwargs):
#     print(a,b,c,args,kwargs)#定义
# test(1,2)
# test(1,2,3)
# test(1,2,3,4)
# test(1,2,3,4,e=5)#调用
#
def filter_sensitive_words(words):
    if "山寨" in words:
        new_words=words.replace("手机","**")
        return new_words
result=filter_sensitive_words("这个手机是山寨版吧!")
print(result)

列题

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值