1.定义:完成特定功能的代码块
同样的功能,不用为了不同的输入而多次代码;
2.如何定义一个函数
(1)def 函数名称(参数1,参数2,参数3):
代码块
(2)return 语句,函数代码将返回到调用的地方继续往下执行;
(3)return 返回的是什么数据对象外面就能得到这个返回值;
函数定义与函数调用
函数定义,函数名称,函数参数,返回值,结束返回
def sum_func(n):
#函数的内部逻辑
sum_value=0
for i in xrange(1, n+1):
sum_value = sum_value+i
return sum_value
当我们定义了一个函数以后,表示有了一个代码块,能够帮我们完成特定的逻辑
如果我需要得到这个逻辑的结果,可以调用和使用这个函数
ret = sum_func(10)
print(ret)
ret = sum_func(20)
print(ret)
运行输出:
55
210
3.调用函数
函数名称(传入参数),可以使用变量保存返回值
4.#参数传递,实际就是变量传递,如果是基本数据类型,传的是值,复杂的数据类型,传的是对象的快捷方式(引用)
输入的参数有多个,用,分开
参数会新创建一个变量
def test_func(a_value,b_object):
a_value=4
print(a_value)
b_object[0]=1
print b_object
ret=3
b_object=[0.1,2,3]
test_func(ret,b_object)
print(ret,b_object)
运行输出:
4
[1, 2, 3]
(3, [1, 2, 3])
5.#函数返回
如果你要返回的是基本数据类型,那么直接返回的是值;
如果你要返回的是复杂数据类型,那么返回的是复杂对象的引用;
你想返回什么,就返回什么
如果想得到多个返回值,返回值之间用,隔开,外面接收的时候也用,隔开
def test_return():
return[4,5,6]
ret=test_return()
print ret
def test_muti_return():
return 3,[4,5,6],5
a,b,c=test_muti_return()
print (a,b,c)
运行输出:
[4, 5, 6]
(3, [4, 5, 6], 5)