标签:默认值 问题 数字 通过 sorted 字符 位置 传值 基本
1、掌握函数的定义和调用。
2、掌握位置参数、关键字参数和参数默认值的使用。
3、掌握参数返回值的定义和使用。
使用函数的目的:①提高代码复用性 ②分而治之-模块化设计的思想,将问题分解为一系列小问题 ③利于代码的维护和管理
函数的三要素:参数、函数体、返回值
def 函数名 (参数):
函数体
return 返回值
函数名 (参数)
# args
def foo1(x,y,z,*args):
print(x,y,z)
print(args)
foo1(1,2,3,4,5,6)
"""
1 2 3
(4,5,6)
"""
# 实参打散
def foo2(x,y,z,*args):
print(x,y,z)
print(args)
foo2(1,2,3,[4,5,6])
"""
1 2 3
([4,5,6])
"""
# **kwargs
def foo3(x,y,z,**kwargs):
print(x,y,z)
print(kwargs)
foo3(1,2,3,a=4,b=5,c=6) #多余的参数以字典的形式打包传递给kwsrgs
"""
1 2 3
{'a':4,'b':5,'c':6}
"""
# 字典形式打散
def foo3(x,y,z,**kwargs):
print(x,y,z)
print(kwargs)
foo3(1,2,3,**{a=4,b=5,c=6}) #多余的参数以字典的形式打包传递给kwsrgs
"""
1 2 3
{'a':4,'b':5,'c':6}
"""
# 可变长参数的组合使用
def foo5(*args,**kwargs):
print(args)
print(kwargs)
foo(1,2,3,a=4,b=5,c=6)
"""
(1,2,3)
{'a':4,'b':5,'c':6}
"""
通过global在函数体内定义全局变量
def foo(x):
return 1, x, x**2, x***3 #打包返回
没有return,返回值为None
lambda 变量:函数体
在参数列表中最适合使用匿名函数,尤其是与key = 搭配
ls = [(93, 88), (79, 100), (86, 71), (85, 85), (76, 94)]
ls.sort()
print(ls)
ls.sort(key=lambda z: z[1])
print(ls)
temp = sorted(ls, key=lambda x: x[0]+x[1])
print(temp)
temp = sorted(ls, key=lambda x: x[0]+x[1], reverse=True) # 降序
print(temp)
"""
[(76, 94), (79, 100), (85, 85), (86, 71), (93, 88)]
[(86, 71), (85, 85), (93, 88), (76, 94), (79, 100)]
[(86, 71), (85, 85), (76, 94), (79, 100), (93, 88)]
[(93, 88), (79, 100), (85, 85), (76, 94), (86, 71)]
"""
标签:默认值 问题 数字 通过 sorted 字符 位置 传值 基本
原文地址:https://www.cnblogs.com/lyszyl/p/12261769.html