#!/usr/local/bin/python3 # -*- coding:utf-8 -*- ''' #-----------定义函数---------- def func1(): "test1" print('in the func1') return 0 #-----------定义过程---------- def func2(): "test2" print('in the func2') #-----如何调用----- # 过程其实就是没有返回值的函数 x=func1() y=func2() print("from func1 return is:%s"%x) print("from func2 return is:%s"%y) #在调用没有返回值的func2时,python自动加入了隐式的返回值none #-----------函数优点---------- def logger(): #优点:1-减少重复代码 with open('test_3','a') as f: # 2-保持函数调用一致性 f.write("end action\n") # 3-高扩展性 def log1(): print("in log1") logger() def log2(): print("in log2") logger() def log3(): print("in log3") logger() log1() log2() log3() #-----------返回值---------- def func1(): print("in func1") def func2(): print("in func2") return 0 def func3(): print("in func3") return 1,'zhangyu',["honey","swallow"],{1:'octopus'} #注:虽然看上去返回了多个值 a=func1() #但实际上是将所有值放入了一个元组进行返回 b=func2() #因此还算是只返回了一个值 c=func3() #总结: print(a) #返回值数=0:返回None print(b) #返回值数=1:返回object print(c) #返回值数>1:返回tuple '''