文章目录
1.什么是函数
- 函数
(function)
由若干条语句组成,用于实现特定的功能 - 函数的本质就是对功能的封装
- 一旦定义了函数,就可以在程序中需要实现该功能的位置调用函数
- 函数名不能重复(没有重载)
2.定义和调用函数
- 使用
de
f关键字来创建python自定义函数 - 可以直接使用函数名来调用函数
语法结构:
def 函数名 (参数列表)
函数体
return 数据
- 参数列表可以为空,也可以包含多个参数
return
可写可不写,不写默认返回None
<1> 定义一个空函数
def test():
pass
<2> 无参函数
def test():
print('in test')
test()
运行结果
in test
尽管定义了函数,只要不调用函数,那这个函数是不会执行的
def hh():
print('hello')
#没有调用这个函数,该函数不执行
<3> 有参函数 (参数—argument/arg)
def test1(arg):
print('in test')
test1(1)
def test2(arg):
print('in test',arg)
#参数类型没有要求,可以是任意类型
test2(1)
test2('hello')
test2([100,200])
def test3(arg,arg1,arg2):
print('in test',arg,arg1,arg2)
# 1-->arg python-->arg1 [1,2]-->arg2
test3(1,'python',[1,2])
运行结果
in test
in test 1
in test hello
in test [100, 200]
in test 1 python [1, 2]
- 参数类型没有要求,可以是任意类型
- 参数的个数没有要求
3. 返回值
def test(arg,arg1,arg2):
print('in test',arg,arg1,arg2)
return 1 #返回1
ret=test(1,2,3) #调用test(1,2,3)函数,然后把返回值给ret变量
print(ret)
运行结果
in test 1 2 3
1
可以返回任何类型
def test1(arg,arg1,arg2):
print('in test1',arg,arg1,arg2)
return [4,5]
ret=test1(1,2,3)
print(ret)
def test2(arg,arg1,arg2):
print('in test2',arg,arg1,arg2)
return [arg,arg1,arg2]
ret=test2(1,2,3)
print(ret)
运行结果
in test1 1 2 3
[4, 5]
in test2 1 2 3
[1, 2, 3]
如果没有return那么就返回None return|return None |不写
def test3(arg,arg1,arg2):
print('in test3',arg,arg1,arg2)
ret=test3(1,2,3)
print(ret)
def test4(arg,arg1,arg2):
print('in test4',arg,arg1,arg2)
return
ret=test4(1,2,3)
print(ret)
def test5(arg,arg1,arg2):
print('in test5',arg,arg1,arg2)
return None
ret=test5(1,2,3)
print(ret)
运行结果
in test3 1 2 3
None
in test4 1 2 3
None
in test5 1 2 3
None
def test1():
print('in the test1')
def test()