python函数详解

'''
函数:是一段可以重复调用的代码,通过输入的参数,返回对应的结果
名字绑定的机制,把实际参数的值与形式参数的值绑定到一起
1、函数调用的时候,实际参数的值的顺序与形式参数的顺序一一对应
2、当在函数调用的时候,指定了形式参数的实际参数,这个时候并不是一一对应,而是根据指定的值进行的
'''

def add(a,b):
 	c=a+b
 	print(c)
 	print(a, b)
 add(34,2)
 add(b=8,a=9)
# 形式参数
def info(name,age,address,sex):
	print ("姓名:{name},年龄:{age},地址:{address},性别:{sex}".
	       format(name=name,age=age,address=address,sex=sex))
info('huang',10,'nanjing','girl')

def userInfo(userID):
	'''登陆成功后,查看用户的基本信息'''
	pass

'''python中的默认参数'''
 def login(username='huang',password='admin'):
	if username=='huang' and password=='admin':
 		print('success')
 	else:
 		print('fail login')

 login('huang','admin')


'''函数中有默认参数和形式参数,形式参数在前,默认参数在后'''
def name_age(name,age=10):
	pass

'''
函数的返回值:
1、一个函数,它是有返回值的
2、当一个函数,没有return的时候,它的返回值是none
3、当一个函数return的时候,它的返回值是return后面的表达式,或者是值

函数返回值的意义:函数/方法的返回值是为了给另外一个函数或方法请求的参数而已
'''
#def add(a,b):
#	c=a+b
#	return c
#print(add(2,3))

'''
接口测试:查看用户信息,要查看,实现步骤:
1、发送post请求,login请求登陆成功;
2、登陆成功之后,返回token;
3、带着这个token,可以查看用户信息
'''
def login(username='huang',password='admin'):
	if username == 'huang' and password=='admin':
		return 'huang12345'
	else:
		return 'login fail'
def userInfo(token):
	'''查看用户信息'''
	if token == 'huang12345':
		print('显示订单信息')
	else:
		print('loginout')

userInfo(login('huang','admin'))

  

''''
动态参数:
*args:--->数据类型是元祖
**kwargs:--->数据类型是字典
'''


def f2(*args):
	print(type(args))
f2(12)

def f3(**kwargs):
	print(type(kwargs))
f3(name='huang')

def f4(name,age,sex,**kwargs):
	print(name,age,sex,kwargs)
f4('huang',10,'girl')
f4('haung',10,'girl',phone=156896533)

def f5(*args,**kwargs):
	print(args,kwargs,type(args),type(kwargs))
f5([1,2],(1,2),8,'huang',11.2,name='huang')

def f6(name):
	print(name)
f6(([1,2],(1,2),8,'huang',11.2))

  

'''全局变量和局部变量'''

name = 'huang' #全局变量
def f1():
	global name # 修改全局变量
	name ='hu'
	print(name)

f1()

def f2():
	name='admin' #局部变量
	print(name)
f2() #优先选择局部变量和局部变量的值

  

原文地址:https://www.cnblogs.com/1510152012huang/p/10208677.html