《Python地理数据处理》——2.6 函数

    xiaoxiao2023-09-11  172

    本节书摘来自异步社区《Python地理数据处理》一书中的第2章,第2.6节,作者: 【美】Chris Garrard(加勒德) 更多章节内容可以访问云栖社区“异步社区”公众号查看。

    2.6 函数

    如果你发现会重复使用相同的代码,可以创建自己的函数并进行调用,而不是重复编写相同的代码。这使得事情变得更容易,也不容易出错,因为不可能有那么多的地方出现拼写错误。创建一个函数,需要给它一个名称,并告诉用户需要提供什么参数来使用它。让我们创建一个简单的函数来计算一个阶乘。

    **def factorial(n):

    answer = 1 for i in range(1, n + 1): answer = answer * i return answer**

    这个函数的名字是factorial,它需要一个参数n。它使用你以前使用过的相同的算法来计算一个阶乘,然后使用返回语句将答案发送给调用方。可以像下面这样使用这个函数:

    >>> fact5 = factorial(5)函数也可以有不需要用户提供数值的可选参数。要创建某个可选参数,在创建该函数时,必须为它提供一个默认值。例如,可以为阶乘函数增加可选参数,并输出答案。

    **def factorial(n, print_it=False):

    answer = 1 for i in range(1, n + 1): answer = answer * i if print_it: print('{0}! = {1}'.format(n, answer)) return answer**

    如果只是用一个数字调用这个函数,没有东西会被输出,因为print_it默认值为False。但是如果传递True作为第2个参数,那么消息会在答案返回前被输出:

    **>>> fact5 = factorial(5, True)5! = 120**通过将你的函数保存在.py文件里,可以很容易地重复使用它,可以像导入任何其他模块一样进行调用。问题是,你的文件需要存放在一个Python可以找到的位置。一种方法是把它和正在运行的脚本放在同一个文件夹中。例如,如果factorial函数保存在myfuncs.py文件中,可以导入myfuncs(注意没有.py扩展名),然后调用它里面的函数。

    **import myfuncsfact5 = myfuncs.factorial(5)**因为某些字符不允许出现在模块名称中,模块名称只有文件名没有扩展,当文件命名时,需要小心。例如,模块名称允许出现下划线,但不允许出现连字符。

    相关资源:敏捷开发V1.0.pptx
    最新回复(0)