1.函数的作用

函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段。
函数能提高应用的模块性,和代码的重复利用率。
#coding=utf-8
#函数的意思:可重复使用,功能模块化
#函数的定义
def function_name():
    print("I am a function")
    return
def function_taozi():
    print("I an taozi")
    #return表示退出函数,并在调用时返回一个值,retun没有指定值或没有return时,默认返回none
    return 0;
    print("retuen已结束退出函数,不会执行后面的语句")
# 函数只有调用才会执行
function_name()
print(function_taozi(),function_name())

运行结果:

I am a function
I an taozi
I am a function
0 None

2.函数的定义

def 函数名(参数列表):
    函数体
--------------------------------------------
def functionname( parameters ):
   "函数_文档字符串"
   function_suite
   return [expression]
  • 函数代码块以 def 关键词开头,后接函数标识符名称和圆括号()
  • 任何传入参数和自变量必须放在圆括号中间。圆括号之间可以用于定义参数。
  • 函数的第一行语句可以选择性地使用文档字符串—用于存放函数说明。
  • 函数内容以冒号起始,并且缩进。
  • return [表达式] 结束函数,选择性地返回一个值给调用方。不带表达式的return相当于返回 None。

3. 函数定义示例

def hello_word():
    pass

def print_diamond(count):
    pass

def get_max(a, b, c):
    pass

3.1.函数可以有0个,1个或多个参数

3.2.pass相当于占位符,没有实际作用

4.函数调用示例

#coding=utf-8;
#无参数函数diaoyong
def helloname():
    print "无参数调用";
    return ;
helloname();
#一个参数调用
def duiying(args):
    if args <= 18:
        print "此人是青年";
    elif args>18 and args<=45:
        print "此人是中年";
    else:
        print "此人是老年";
    #return;
duiying(55);
#多个参数调用
def sum(a,b,c):
    s =a+b+c;
    return s;
print  sum(22,44,22);

执行结果:

无参数调用
此人是老年
88

 当你使用def 定义了一个函数后,只有调用这个函数才能让这个函数运行。

return的作用是退出函数并返回函数的返回值,任何时候,只要执行了return语句就一定会退出函数。函数2 retun已被注释掉,是否有返回值。

函数2没有使用return语句,但仍然会有返回值,这种情况下,函数默认返回None.

4.1 函数有多个返回值

#函数有多个返回值
def muchvalue():
    return 1,2,3,4,5,6;
print  muchvalue(),type(muchvalue());

返回结果:

(1, 2, 3, 4, 5, 6) <type 'tuple'>

函数一次返回多个结果时,是以元组的形式返回的。如果函数里没有任何数据需要返回,但需要提前结束,也可以使用return。

 5.None类型

#None类型
a = None;
b = None;
print a==b,id(a),id(b),a is None,b is None ,"a的类型:",type(a),not a;

运行结果:

True 1510931096 1510931096 True True a的类型: <type 'NoneType'> True

None在python中是一个特殊的对象,它表示空值,其类型为NoneType。

None只存在一个,python解释器启动时创建,解释器退出时销毁

由于内存None只有一个,所以a is b的结果为True。

None不支持任何运算,也没有内建方法,除了表示空以外,什么都做不了。

如果要判断一个对象是否为None,使用is身份运算符。

如果一个函数,没有显式return任何数据,则默认返回None。

在判断语句中,None等价于False。