diff --git a/第13课:函数和模块.md b/第13课:函数和模块.md index 3db76c7..6b3e13b 100644 --- a/第13课:函数和模块.md +++ b/第13课:函数和模块.md @@ -1,13 +1,17 @@ ## 第13课:函数和模块 在讲解本节课的内容之前,我们先来研究一道数学题,请说出下面的方程有多少组正整数解。 + $$ x_1 + x_2 + x_3 + x_4 = 8 $$ + 你可能已经想到了,这个问题其实等同于将`8`个苹果分成四组且每组至少一个苹果有多少种方案,因此该问题还可以进一步等价于在分隔`8`个苹果的`7`个空隙之间插入三个隔板将苹果分成四组有多少种方案,也就是从`7`个空隙选出`3`个空隙放入隔板的组合数,所以答案是$ C_7^3=35 $。组合数的计算公式如下所示。 + $$ C_M^N = \frac {M!} {N!(M-N)!} $$ + 根据我们前面学习的知识,可以用循环做累乘的方式来计算阶乘,那么通过下面的Python代码我们就可以计算出组合数$ C_M^N $的值,代码如下所示。 ```Python @@ -279,4 +283,4 @@ Python标准库中还有一类函数是不需要`import`就能够直接使用的 ### 简单的总结 -**函数是对功能相对独立且会重复使用的代码的封装**。学会使用定义和使用函数,就能够写出更为优质的代码。当然,Python语言的标准库中已经为我们提供了大量的模块和常用的函数,用好这些模块和函数就能够用更少的代码做更多的事情;如果这些模块和函数不能满足我们的要求,我们就需要自定义函数,然后用模块的概念来管理这些自定义函数。 \ No newline at end of file +**函数是对功能相对独立且会重复使用的代码的封装**。学会使用定义和使用函数,就能够写出更为优质的代码。当然,Python语言的标准库中已经为我们提供了大量的模块和常用的函数,用好这些模块和函数就能够用更少的代码做更多的事情;如果这些模块和函数不能满足我们的要求,我们就需要自定义函数,然后用模块的概念来管理这些自定义函数。