文章目录
Python基础-函数
1.引子:
分别求1-15,23-65,253-685的和
def sum(m,n):
sum=0
for i in range(m,n+1):
sum+=i
print(sum)
sum(1,15)
sum(12,36)
sum(55,68)
对程序而言:函数是对程序逻辑进行结构化或者过程化的一种编程方法。
built-in function 内置函数 —>BIF
2.函数定义:
声明函数的一般形式:
def function_name(arg1,arg2,...,argn):
'''statements''' #函数功能,可以使用dunction_name._doc_调用
func_statements #函数体
return value #返回值
说明如下:
1.函数代码块以 def 关键词开头,后接函数标识符名称和小括号 ()。
2.任何传入参数和自变量必须放在圆括号中间,圆括号之间可以用于定义参数。
3.函数的第一行语句可以选择性地使用文档字符串----用于存放函数说明。
4.函数内容以冒号起始,并且缩进。
5.return [表达式] 结束函数,选择性的返回一个值给调用方。不带表达式的return相当于返回 None。
其中参数列表和返回值不是必须的,return后也可以不跟返回值,甚至连 return也没有。
对于return后没有返回值的和没有return语句的函数都会返回None值
有些函数可能既不需要传递参数,也没有返回值。
没有参数时,包含参数的圆括号也必须写上,圆括号后也必须有“:”。
3.函数调用
定义一个函数:给了函数一个名称,指定了函数里包含的参数,和代码块结构。
这个函数的基本结构完成以后,你可以通过另一个函数调用执行,也可以直接从 Python 命令提示符执行。
格式:
def fc():
print('hello')
fc()
4.函数文档说明
用于向别人解释函数的功能,用法,以及参数
可用 f.__doc__调用说明
def foo():
'foo() --- Properly created doc string.'
def bar():
pass
bar.__doc__='Oops,forget the doc str above'
print(foo.__doc__,bar.__doc__)
'''
foo() --- Properly created doc string. Oops,forget the doc str above
'''
5.函数参数
- 不传参函数
- 传参函数
- 顺序
6.函数返回值
使用return语句为函数增加返回值
def sum(x,y):
return x+y
print(sum(1,2))
'3'
7.函数的参数种类
1. 形参
只有在调用时才分配内存单元,调用结束后,释放所分配的内存单元。因此形参只在函数内部有效,函数调用结束返回主调用函数后不能再使用该形参变量。
2.实参
为一个确定的值,能够传递给形参,作为位置参数或者关键字参数传递
3. 位置参数
def usr_manage(name,age,job,hobby):
print('用户管理系统'.center(16,'-'))
print('\tName:\t',name)
print('\tAge:\t',age)
print('\tJob:\t',job)
print('\tHobby:\t',hobby)
usr_manage('jack',20,'IT','reading')
usr_manage('Nico',18,'Stu','Gameing')
# 值传递实参,位置一一对应 --->位置参数
#使用位置参数时和函数头定义的形参在顺序,个数,类型上匹配
'''
-----用户管理系统-----
Name: jack
Age: 20
Job: IT
Hobby: reading
-----用户管理系统-----
Name: Nico
Age: 18
Job: Stu
Hobby: Gameing
'''
4.默认值参数
当对应形参无输入时,使用默认值作为输出
def usr_manage(name='bill',age='35',job='panter',hobby='swimming'):
print('用户管理系统'.center(16,'-'))
print('\tName:\t',name)
print('\tAge:\t',age)
print('\tJob:\t',job)
print('\tHobby:\t',hobby)
usr_manage()
'''
-----用户管理系统-----
Name: bill
Age: 35
Job: panter
Hobby: swimming
'''
默认值参数,关键字参数必须放置于位置参数之后
5.不定参数
在Python中指* args和**kwargs两个魔法变量,主要用于函数定义,我们可以将不定数量的参数传递给一个函数。
#魔法变量在最前面,最后面和中间
*a,b,c=1,2,3,4,5
print(a,b,c