9、python --函数(一)

函数

函数就是一段实现特定功能的代码,使用函数可以提高代码的重复利用率。
自定义函数
1.使用def 关键字来声明函数

def 函数名(参数):
函数体
return 返回值

2.定义一个无任何功能的空函数,函数体只写pass

def 函数体(*参数名):
pass

3不确定参数个数时,可以使用不定长参数,在参数名前加 * 进行声明

def 函数名(*参数名)
函数体

函数的参数

位置参数:在调用函数时,python必须将每个实参都关联到函数定义的一个形参中,最简单的关联方式就是实参的顺序
关键字参数:传递给函数的是键值对,实参中的将名称和值关联起来,所有在传入时无需考虑顺序

def hello (name1,name2):
pass
hello (" lian" , “zong”) #位置实参
hello (name 1= “lian” , name2 = “song”) #关键字参数

位置参数和关键字 参数混合使用时:

1.位置参数必须写在关键字参数的左边
2.同一参数不能两次或者多次传值,只能一次

def hello (name,age,height):
pass
hello ( “lisn”, age = 20 ,height = 175) #正确的混合方式
hello(name = “lisn” , 20 ,height = 175)#错误的方式,位置参数必须放在关键字左边,

默认参数
定义形式:def calc (para1,para2 = None):其中para2 是默认参数
意义:可变参数就是传入的参数是可变的。可以是1个,2个到任意个,还可以是0个
设置默认参数需要注意的点:
1.必选参数在前,默认参数在后;否则不知道你传进的值是给谁的
2.当函数有多个参数时,把变化大的参数放在前面,变小的参数放在后边。变小的参数可以当做默认值。
3.默认参数必须指向不变对象 ,因为不变对象一旦创建,对象内部的数据就不能修改

不定长参数
pytho 中有两种不定长参数
第一种是*来实现 ,在传入额外的参数时可以不用指明参数名,直接传入参数值即可
第二种是 ** 这种类型返回的是字典,传入时需要指定参数名
*不定长参数以元组的形式导入,存放所有未命名的变量参数
** 以字典形式导入,存放已命名的变量参数

传递不可变与可变对象
可变对象:list ,dict
不可变对象: int ,string,float,tuple

变量的作用域

全局变量:在模块内,在所有函数外面,在class外面,这就是全局变量
局部变量:在函数内,在class的方法内(未加self修饰),这就是局部变量

def fun ():
a = 10
print (a)
return a + 100
print (fun ())
输出
10
100
在函数体内使用都是局部变量

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值