1、对参数的修改
元组,字符串,int类型不可变,作为参数传入,也不会更改本身的值
列表,字典是可变数据结构,作为参数传入,如果在函数执行时,本身值会被函数内的操作更改
如果想修改不可变数据结构:
只能通过函数返回的值重新赋值。
如果想不更改可变数据结构的参数:
只能复制改结构,name[:]
参数的传递,默认根据函数定义时的位置,也可以手动指定:
def hello(greeting,name): print "%s, %s!" %(greeting,name) hello(greeting="hello",name="qujun")
当有大量的参数需要传递的时候,函数的参数定义可以使用*params,如:
def muli_paramter(*params): print params
注:这样收集到的多个参数将是元组格式存储
收集关键字参数,则需使用**params
def print_params(x,y,z=3, *pospar,**keypar)L print x,y,z print pospar print keypar
注:**params收集到的参数是字典格式
def add(x,y): return x + y params=(1,2) add(*params)def hello(greeting="hello",name="qujun"): print "%s,%s!" %(greeting,name) keypar={‘name‘="xixi","greeting"="haha") hello(**keypar)
本文出自 “DanielQu” 博客,请务必保留此出处http://qujunorz.blog.51cto.com/6378776/1905246
原文地址:http://qujunorz.blog.51cto.com/6378776/1905246