def fun(num):
odd=[]#奇数
even=[]#偶数
for i in num:
if i%2:
odd.append(i)
else:
even.append(i)
return odd,even
lst=[10,29,34,23,44,53,55]
print(fun(lst))
#([29, 23, 53, 55], [10, 34, 44])
'''
函数的返回值
(1)如果函数没有返回值【函数执行完毕之后,不需要给调用处提供数据】return可以省略不写
(2)函数的返回值,如果是1个,直接返回类型
(3)函数的返回值,如果是多个,返回的结果为元组
'''
#eg
def fun1():
print('hello')
fun1()
#eg2
def fun2():
return'hello'
res=fun2()
print(res)
#eg3
def fun3():
return 'hello','world'
print(fun3())
'''函数在定义时,是否需要返回值,视情况而定'''
def fun(a,b=10)
fun(100)
#100 10
fun(20,30)
#20 30
print('hello')
print('world')
#hello
#world
print('hello',end='\t')
print('world')
#hello world
def fun(*args):
print(args)
fun(10)
fun(10,20,30)
# (10,)
#(10, 20, 30)
def fun1(**args): #个数可变的位置参数和关键字参数只能是一个
print(args)
fun1(a=10)
fun1(a=20,b=30,c=40)
print('hello','world','java')
#{'a': 10}
#{'a': 20, 'b': 30, 'c': 40}
#hello world java
#在一个函数的定义过程中,既有个数可变的位置形参,又有位数可变的关键字形参,要求,个数可变的位置形参
def fun4(a,b,c,d):
print('a=',a)
print('b=',b)
print('c=',c)
print('d=',d)
fun4(10,20,30,40)#位置实参
fun4(a=10, b=20,c=30,d=40)#关键字实参
fun4(10,20,c=30,d=40)#前两个参数,采用的是位置实参,后两个参数,采用的是关键字实参。
def fun5(a,b,c,*,d,**args):
pass
def fun6(*args,**args2):
pass
def fun7(a,b=10):
pass