函数

一、概述

(一)可以使用input( )print( )函数

  (二)结构清晰,代码精简

二、定义函数

使用def定义函数

 (一)定义函数

1.没有参数的情况下

def add():
    result = 11 + 22
    print(result)

2.有参数的情况下

def add_modify(a, b):
    result = a + b
    print(result)

(二)调用函数

函数名([参数列表])

add()
add_modify(10, 20)

三、函数参数传递

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

(一)位置参数的传递 

def get_max(a, b):
    if a > b:
        print(a,"是较大的值!")
    else:
        print(b,"是较大的值!")
get_max(8, 5)

(二)关键字参数的传递

def connect(ip, port):
    print(f"设备{ip}:{port}连接!")
connect(ip="127.0.0.1", port=8080)

可以用符号“/”来区别到底是关键字传参还是位置传参

(三)默认参数的传递

函数在定义时可以指定形参的默认值,如此在被调用时可以选择是否给带有默认值的形参传值,若没有给带有默认值的形参传值,则直接使用该形参的默认值。

def connect(ip, port=8080):
    print(f"设备{ip}:{port}连接!")                        #定义

connect(ip="127.0.0.1")
connect(ip="127.0.0.1", port=3306)                        #调用

(四)参数的打包与解包

1.打包

(1)“**”或使用*args**kwargs

(2)如果*args**kwargs为空,即它们为空元组空字典

2.解包

(1)实参是元组   →   可以使用“*拆分成多个值  →  按位置参数给形参

(2)实参是字典   →    可以使用“**拆分成多个键值对    →    关键字参数形参

(五)混合传递

优先按位置参数传递的方式,然后按关键字参数传递的方式,之后按默认参数传递的方式,最后按打包传递的方式。

四、函数的返回值

(一)如果函数使用return语句返回多个值,那么这些值将被保存到元组

def move(x, y, step):
    nx = x + step
    ny = y - step
    return nx, ny     # 使用return语句返回多个值

result = move(100, 100, 60)  	
print(result)          #调用

五、变量作用域

(一)局部变量

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

def test_one():
    number = 10      
    print(number)             # 访问test_one()函数的局部变量number
def test_two():
    number = 20
    print(number)             # 访问test_two()函数的局部变量number
test_one()
test_two()

(二)全局变量 

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

number = 10         							# 全局变量
def test_one():
    print(number)   							# 函数内部访问全局变量
test_one()
print(number)       		

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

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值