码迷,mamicode.com
首页 > 编程语言 > 详细

Python-函数

时间:2014-09-07 12:19:05      阅读:229      评论:0      收藏:0      [点我收藏+]

标签:style   blog   color   使用   ar   for   div   sp   log   

def funcname(param1,param2,...):

    statements

 

在函数中没有与全局变量同名的变量时,我们可以直接读取全局变量的值(不提倡这么做,容易混淆)

要想在函数内对全局变量进行重新赋值,就得在函数内使用global语句

e.g.

number = 23

def assignnum():

    number=13

assignnum函数里的number只是一个局部变量,对它赋值不会改变全局变量number

def assignnum():

    global number

    number=13

global语句声明number是全局变量,此时修改的就是全局变量number的值了

 

nonlocal语句

python可以实现在一个函数中定义另一个函数,要在内层函数中使用外层函数的变量,就用nonlocal语句

def func_outer():
    x=5
    def func_inner():
        nonlocal x
        x=2
    func_inner()
    print(x)
func_outer

输出2

 

函数的缺省参数是从右向左的

def func(a,b=5): #ok

def func(a=5,b): #invalid

 

keyword arguments

#!/usr/bin/python

def func(a,b=5,c=10):
    print a=,a,b=,b,c=,c

func(3,7)
func(25,c=24)
func(c=50,a=100)

output:

a=3 b=7 c=10

a=25 b=5 c=24

a=100 b=5 c=50

 

VarArgs parameters

#!/usr/bin/python

def total(initial=5,*numbers,**keywords):
    count = initial
    for number in numbers:
        count+=number
    for keyword in keywords:
        count+=keywords[keyword]
    return count

print total(10,1,2,3,vagetables=50,fruits=100)

output:

166

*number用来装多出来的位置参数 1,2,3. number是由这些参数组成的list

**keywords用来装多出来的关键字参数 vagetables=50,fruits=100. keywords是由这些参数组成的字典

Python-函数

标签:style   blog   color   使用   ar   for   div   sp   log   

原文地址:http://www.cnblogs.com/johnsblog/p/3960248.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!