1.函数一般形式

  函数代码块以 def 关键词开头,后接函数标识符名称和圆括号()。任何传入参数和自变量必须放在圆括号中间。圆括号之间可以用于定义参数。函数的第一行语句可以选择性地使用文档字符串—用于存放函数说明。函数内容以冒号起始,并且缩进。

return [表达式] 结束函数,选择性地返回一个值给调用方。不带表达式的return相当于返回 None。


例子:

def sum(x,y):

   print("x={0}".format(x))

   print("y={0}".format(y))

   return x+y

m = sum(10,20)

print(m)



2.函数参数

1)函数变量存在默认值时,调用时,优先取新传入的值

例子:

def funcA(x,y=1):

   print x

   print y

funcA(2)

print("*"*20)

funcA(2,2)


结果:

2

1

********************

2

2


2)在Python里,带*的参数就是用来接受可变数量参数的,参数为tuple,即元组,*c表示3、4、5、6;后面的*test是解包,一一对应关系


例子:

def funcA(a,b,*c):

   print(a)

   print(b)

   print("The lenth of c is: %d" % len(c))

   print(c)

funcA(1,2,3,4,5)

d = ('hello,','world')

funcA(1,2,*d)



结果:

1

2

The lenth of c is: 3

(3, 4, 5)

1

2

The lenth of c is: 2

('hello,', 'world')



3)如果一个函数定义中的最后一个形参有 ** (双星号)前缀,所有正常形参之外的其他的关键字参数都将被放置在一个字典中传递给函数,**b表示字典


例子:

def funcB(a,**b):

   print(a)

   print(b)

   for x in b:

       print( x + ":" + str(b[x]))

funcB(1,x="hello,",y="world")


结果:

1

{'y': 'world', 'x': 'hello,'}

y:world

x:hello,