python函数定义语法_python函数的基本语法<三>

实参和形参:

定义函数括号里的一般叫形参

调用时括号里传递的参数一般叫实参

def students(age):

print('my age is %s' % age)

students(18)

age就是形参,18就是实参

参数的具体应用:

1、位置参数:按照从左到右的顺序定义的参数

位置形参:必选参数

位置实参:按照位置给形参传值

def foo(x,y):

print(x,y)

foo(1,2)

#结果:1,2

2、关键字参数:

按照key=value的形式定义的实参

无需按照位置为形参传值

注意的问题:

1. 关键字实参必须在位置实参右面

2. 对同一个形参不能重复传值

def foo(x,y):

print(x,y)

foo(y=2,x=1)

结果:1,2

3、默认参数:

形参在定义时就已经为其赋值

可以传值也可以不传值,经常需要变得参数定义成位置形参,变化较小的参数定义成默认参数(形参)

注意的问题:

1. 只在定义时赋值一次

2. 默认参数的定义应该在位置形参右面

3. 默认参数通常应该定义成不可变类型

def foo(x,y=2):

print(x,y)

foo(1)

#结果:1,2

foo(1,3)

#结果:1,3

4、可变长参数:

可变长指的是实参值的个数不固定

而实参有按位置和按关键字两种形式定义,针对这两种形式的可变长,形参对应有两种解决方案来完整地存放它们,分别是*argsh和**kwargs

#*args:传递的参数会变成元组

def foo(x,y,*args):

print(x,y,args)

foo(1,2,3)

#结果:1 2 (3,)

#**kwargs:传递的参数会变成字典

def foo(x,y,**kwargs):

print(x,y,kwargs)

foo(1,2,a=3,b=4)

#结果:1 2 {'a': 3, 'b': 4}

return 语句:

return语句[表达式]退出函数,选择性地向调用方返回一个表达式。

不带参数值的return语句返回None。之前的例子都没有示范如何返回数值,下例便告诉你怎么做:

# 可写函数说明

def add_sum(arg1, arg2):

# 返回2个参数的和."

total = arg1 + arg2

print("函数内 : ", total)

return total

# 调用sum函数

total = add_sum(10, 20)

名称空间:

1.内置名称空间:比如print,max...(ctrl+左键查看源代码)这些内置函数所存在的地方叫做内置名称空间

2.全局名称空间:顶格写的属于全局名称空间里面的

3.局部名称空间:函数里面的代码属于局部名称空间

作用域:名称空间的访问顺序

总结:三者的加载顺序

内置 - -->全局 - -->局部

三者的访问顺序

局部 - -->全局 - -->内置

def f1():

def f2():

def f3():

print(print)

f3()

f2()

f1()

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值