三周三次课(11月1日)
1.熟悉函数的写法
定义一个函数,需要以下规则:
函数代码块以def关键词开头,后接函数标识符名称和圆括号()。
任何传入参数和自变量必须放在圆括号中间,圆括号之间可用于定义参数。
def hanshu(x,y) //hanshu为此函数标识符,x,y为参数
函数的第一行语句可以选择性地使用文档字符串一用于存放函数说明。
函数内容以冒号起始,并且缩进。
return [表达式] 结束函数,选择性地返回一个值给调用方。不带表达式的return相当于返回None。
现在我们举一个简单的例子
def sum(x,y):
print('x= {0}'.format(x))
print('y= {0}'.format(y))
return x+y //函数内部要缩进
x = 1
y = 2
m = sum(x,y)
n = sum(10,3) // 其中10和3是实参,也可写成 n = sum(x=10,y=3)
print(m)
2.函数参数的不同方法
给变量设置一个默认值
def funcA(a,b=0): //b=0为默认值,b没有被赋值时,其值为默认值
print(a)
print(b)
例子1
funcA(1)
输出
1
0
例子2
funcA(1,2)
输出
1
2
参数为tuple
def funcD(a,b,*c):
print(a)
print(b)
print"length of c is: %d " % len(c)
print(c)
例
funcD(1,2,3,4,5,6)
输出
1
2
length of c is: 4
(3,4,5,6)
参数为字典
def funcF(a,**b):
print(a)
for x in b:
print x+":"+str(b[x]) //x为键值,b[x]为value
funcF(100,x="Hello",y="你好")
输出
100
y:你好
x:Hello
例2
args = {'1':'aaa','2':'bbb'}
funcF(100,**args) //args前加**为解包的意思,相应的上面tuple的引用也可用这种方法
test=('qqq','www')
funcD(1,2,*test)