Day1:变量、运算符与数据类型
Day2:条件与循环
Day3&4:列表与元组
Day5:字符串与序列
Day6&7:函数与Lambda表达式——>本文
Day8:字典与集合
Day9&10:文件与文件系统
Day11:异常处理
Day12:else 与 with 语句
Day13&14:类与对象
Day15&16:魔法方法
Day17:模块
def myprint(istr):
print(istr[::-1])
myprint('hello')
#olleh
def changeXY(x,y):
x=x*2
y=y//2
return x,y
x,y=6,66
print(changeXY(x,y))
#(12,33)
def myprint():
pass
def ChangeTry(iint,ilist):
iint,ilist[0] = 10,10 #当然
myint,mylist = 2,[2,2,2]
ChangeTry(myint,mylist)
print(myint,mylist)
#2 [10, 2, 2]
def changeXY(x,y=8):
x=x*2
y=y//2
return x,y
x,y=6,66
print(changeXY(x))
#(12, 4)
def calc(*numbers):
sum=0
for n in numbers:
sum+=n*n
return sum
print(calc(1,2,3),calc(1,2,3,4,5))
#14 55
def person(name, age, **kw):
print('name:', name, 'age:', age, 'other:', kw)
person('Mike',25,gender='M', job='Engineer')
#name: Mike age: 25 other: {'gender': 'M', 'job': 'Engineer'}
请定义一个函数quadratic(a, b, c),接收3个参数,返回一元二次方程 ax2+bx+c=0的两个解。
提示:
一元二次方程的求根公式为:
x = − b ± b 2 − 4 a c 2 a x=\frac{-b\pm\sqrt{b^2-4ac}}{2a} x=2a−b±b2−4ac
计算平方根可以调用math.sqrt()函数
from math import sqrt #导入开平方的函数
def quadratic(a, b, c):
d=sqrt(b*b-4*a*c)
x1=(-b+d)/2/a
x2=(-b-d)/2/a
return(x1,x2)
print('quadratic(2, 3, 1) =', quadratic(2, 3, 1))
#quadratic(2, 3, 1) = (-0.5, -1.0)
python 使用 lambda 来创建匿名函数。
所谓匿名,意即不再使用 def 语句这样标准的形式定义一个函数。
lambda 只是一个表达式,而不是一个代码块,函数体比 def 简单很多。
关键字lambda表示匿名函数,冒号前面的x表示函数参数
score=[['Mike',92],['Mary',95],['Jack',98],['Kate',90]]
'''1.普通排序(按第一个元素)'''
score.sort()
print(score)
#[['Jack', 98], ['Kate', 90], ['Mary', 95], ['Mike', 92]]
'''2.定义函数,使之按第二个元素进行排序(且从高到低输出)'''
def need1(a):
return a[1]
score=[['Mike',92],['Mary',95],['Jack',98],['Kate',90]]
score.sort(key=need1,reverse=True)
print(score)
#[['Jack', 98], ['Mary', 95], ['Mike', 92], ['Kate', 90]]
'''3.用lambda定义匿名函数,节省代码空间'''
score.sort(key=lambda a:a[1],reverse=True)
print(score)
#[['Jack', 98], ['Mary', 95], ['Mike', 92], ['Kate', 90]]