重读LPTHW-Lesson18-21 函数

1.def 定义函数,选取合适的函数名,原则是易于理解、阅读。函数名格式与变量命名格式相同,以字母开始,可以包含字母、数字、下划线。函数命名后,把参数放在()中,可以无参数。然后:结束函数命名,开始函数主体部分。主体部分开头缩进4个空格。

# -*- coding: utf-8 -*-
def print_input(user_input):
    user_input = raw_input("请输入需打印的内容".decode('utf-8').encode('gbk'))
    print user_input
        

2.可以在定义函数时指定某个/些参数的默认值:

def exponential(bottom,exponent = 2):
    value = bottom ** exponent
    print "%d ** %d = %d" % (bottom,exponent,value)
exponential(20)
exponential(20,3)

输出:

PS:只有在末尾的参数可以定义默认参数值。def func(a,b = 5)有效;而def func(a = 5,b)无效

3.使用global 来声明全局变量。注意全局变量和局部变量的区别

(1)局部变量的例子:

def func(x):
    print "x is ",x
    x = 2
    print "Change local x to",x
x = 50
func(x) print "x is still",x

输出:

(2)声明全局变量:

def func():
    global x
    
    print "x is",x
    x = 2 
    print "Change local x to",x

x = 50
func()
print "Now value of x is",x

输出:

4.在调用函数而为参数赋值时,可以使用关键参数法。即调用的函数有多个参数,只想指定其中一部分则可以通过命名来为这些参数赋值,这样的优点有:①不用担心参数赋值的顺序②假设其他参数有默认值的话,可以只给部分参数赋值。

eg:

def func(a,b = 5,c = 10):
    print "a is",a,"and b is",b,"and c is",c
func(23,c=34)        #23赋值给a,b用默认值,c赋值34
func(c=2,a = 1)      #c赋值2,a赋值1,b默认值5
func(12,23)          #a赋值12,b赋值23,c默认值10

输出:

 

posted on 2015-08-04 22:09  周洁  阅读(307)  评论(0编辑  收藏  举报