![Python数据整理](https://wfqqreader-1252317822.image.myqcloud.com/cover/51/32436051/b_32436051.jpg)
上QQ阅读APP看书,第一时间看更新
2.2.3 Lambda表达式
练习18:用Lambda表达式证明三角恒等式
在这个练习中,我们将使用Lambda表达式来证明著名的三角恒等式(见图2-3)。
![](https://epubservercos.yuewen.com/63BD11/17517093106688706/epubprivate/OEBPS/Images/t2-3.jpg?sign=1739313430-PTangDn4wzWPpUGW7gSyRsoDdUTyTFFn-0-6ecb6c8ca3dc68529e72acc823e19a96)
图2-3 三角恒等式
1.导入math包:
![](https://epubservercos.yuewen.com/63BD11/17517093106688706/epubprivate/OEBPS/Images/029-i.jpg?sign=1739313430-lfvIeeC6edOhPPDi1owXJK4tcPRk5mmJ-0-da98aa249b616f8d12ee0804fe6a1e41)
2.定义两个函数my_sine和my_cosine。声明这两个函数的原因是,math包中的原始sin和cos函数将弧度作为输入,但我们更熟悉角度。所以,我们使用Lambda表达式定义一个无名称的单行函数,该函数自动将输入的角度转换为弧度,然后对其应用sin或cos函数并返回值:
![](https://epubservercos.yuewen.com/63BD11/17517093106688706/epubprivate/OEBPS/Images/029-2-i.jpg?sign=1739313430-CeuYUHEBKFCvWERMeAREfajw7FDQOlM1-0-7aa6d14e06f18c04082f7655d83ef66e)
3.根据我们的目的定义sine和cosine:
![](https://epubservercos.yuewen.com/63BD11/17517093106688706/epubprivate/OEBPS/Images/029-3-i.jpg?sign=1739313430-7ChKe2qPPWQDEWozuC6klIulCR55pDJt-0-df5521281600f7af9a6dd7aab4ada0e3)
输出如下:
![](https://epubservercos.yuewen.com/63BD11/17517093106688706/epubprivate/OEBPS/Images/029-4-i.jpg?sign=1739313430-9zf9VPFTa6WnCkoLUKCefTWlaEqgMMVT-0-0047a8219d9843ec76b4b490c901b640)
需要注意的是,我们已经将my_sine和my_cosine的返回值赋给了两个变量,然后将它们直接用作函数。这是一种比直接使用它们更简洁的方法。另外,我们没有在Lambda函数内显式写入return语句。