购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

2.6 Python函数

函数是组织好的、可重复使用的用来实现单一或相关联功能的代码段。函数能提高应用的模块性和代码的重复利用率。我们已经知道Python提供了许多内建函数,例如print()函数。但我们也可以自己创建函数,该函数称为用户自定义函数。

2.6.1 定义一个函数

我们可以定义一个具有自己想要的功能的函数,定义函数的规则如下:

·函数代码块以def关键词开头,后接函数标识符名称和圆括号“()”。

·任何传入参数和自变量必须放在圆括号中间,圆括号之间可以用于定义参数。

·函数的第一行语句可以选择性地使用文档字符串——用于存放函数说明。

·函数内容以冒号“:”起始,并且缩进。

·return[表达式]结束函数,选择性地返回一个值给调用方,不带表达式的return相当于返回None。

定义一个函数的整个结构如图2-22所示。

Python定义函数使用def关键字,一般格式为

     def函数名(参数列表):
         函数体

图2-22 定义函数结构

默认情况下,参数值和参数名称是按函数声明中定义的顺序匹配起来的。

【例2-14】 计算面积函数。

     #计算面积函数
     def area(width,height):
         return width * height
     
     def print_welcome(name):
         print("Hello",name)
     
     print_welcome("Python")
     w=3
     h=4
     print("width(宽)=",w,"height(长)=",h,"area(面积)=",area(w,h))

运行程序,输出如下:

     Hello Python
     width(宽)=3 height(长)=4 area(面积)=12

2.6.2 函数调用

定义一个函数,即给了函数一个名称,指定了函数里包含的参数和代码块结构。这个函数的基本结构完成以后,可以通过另一个函数调用执行,也可以直接通过Python命令提示符执行。

【例2-15】 演示如何将自定义的my_len()函数封装成一个函数。

     #自定义my_len()函数
     def my_len(str):
         length=0
         for c in str:
            length=length+1
         return length
     #调用自定义的my_len()函数
     length=my_len("https://hao.360.com/")
     print(length)
     
     #再次调用my_len()函数
     length=my_len("https://hao.360.com/?src=hj_llqzq&ls=1")
     print(length)

运行程序,输出如下:

     20
     38

值得注意的是,与其他编程语言中函数相同,Python函数支持接收多个(≥0)参数,不同之处在于,Python函数还支持返回多个(≥0)值。

例如,上面程序中,在自定义my_len(str)函数时,为其设置了1个str参数,同时该函数经过内部处理,会返回1个length值。 uvTu3CmVhSTWWwGUFjp1WgHmhatyMUaQYu5+qkB0mQHwnM3bwAuY+RA6Bh4Kjikl

点击中间区域
呼出菜单
上一章
目录
下一章
×

打开