学习python的第9天

这篇博客主要介绍了Python函数的基础知识,包括函数参数的类型如位置参数、关键字参数和默认值,不定长参数的使用,函数返回值的概念和确定方法,以及函数调用的过程。此外,还探讨了变量的作用域,区分了全局变量和局部变量,并讲解了`global`和`nonlocal`关键字。最后,介绍了Python的匿名函数及其语法。
摘要由CSDN通过智能技术生成

函数基础

一、函数的参数

1.位置参数和关键字参数(实参)

根据函数调用的时候实参的传递方式将实参分为位置参数和关键字参数。

  • 位置参数 - 调用函数的时候直接在括号里面写多个实参,实参和形参是一一对应的。
  • 关键字 - 调用函数的时候以 形参名=实参 的形式来确定实参。(位置不影响结果)

注意:位置参数和关键字参数可以 一起使用,但是位置参数必须在关键字参数的前面,不管以什么样的形式传参,最终都要保证每个参数都有值。

def func1(a, b, c):
    print(f'a:{a}, b:{b}, c:{c}')


# 位置参数
func1(20, 30, 40)     # a:20, b:30, c:40
func1(30, 20, 40)     # a:30, b:20, c:40

# 关键参数
func1(a=100, b=200, c=300)    # a:100, b:200, c:300
func1(b=200, c=300, a=100)    # a:100, b:200, c:300

# 关键参数不能重复
# func1(a=100, b=200, a=300, c=400)   # SyntaxError: keyword argument repeated
# 每次形参都必须赋值
# func1(a=100, c=300)    # TypeError: func1() missing 1 required positional argument: 'b'

# 位置参数和关键字参数一起用
func1(10, c=30, b=20)   # a:10, b:20, c:30
func1(100, 200, c=300)  # a:100, b:200, c:300
# 位置参数必须在关键字参数的前面
# func1(a=10, 20, c=30)   # SyntaxError: positional argument follows keyword argument
2.参数默认值(形参)

在定义函数的时候,可以给形参赋值默认值;如果一个形参有默认值,那么这个参数在调用的时候可以不用传参。如果定义函数的时候有的参数有默认值,有的参数没有默认值;没有默认值得参数必须在有默认值得参数的前面。

def func2(a=10, b=20, c=30):
    print(f'a:{a}, b:{b}, c:{c}')


func2()   # a:10, b:20, c:30
func2(100)   # a:100, b:20, c:30
func2(100, 200)     # a:100, b:200, c:30
func1(100, 200, 300)   # a:100, b:200, c:300
func2(c=300)   # a:10, b:20, c:300
func2(100, c=300)    # a:100, b:20, c:300


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值