函数
函数是指用于进行某种计算的一系列语句的有名称的组合。
type(32)
就是一个函数调用的例子
类型转换函数
python提供了一些可将某个值从一种类型转换为另外一个类型的内置函数
int(32)
将浮点转换成整数类型float(32)
将整数转换成浮点类型str(32)
将参数转换为字符
数学函数
python有一个数学模块 提供了常用的数学函数
要想使用math
必须先引入运行环境。
import math #引入math模块
math
模块的具体函数 可以查看文档。
定义新函数
到现在为止,我们了解了变量/表达式/语句
,还没有将他们合理的组合起来。def
表示接下来定义一个函数
def print_text():
print "some text"
#接下来执行这个函数
print_text()
执行流程
为了保证函数的定义先于其首次调用执行,你需要知道程序中语句的执行顺序,即执行流程
程序总是从程序的第一行开始,按顺序,每次执行一条语句。
函数定义并不会改变程序的执行流程,函数语句并不会立即执行,需要等待调用。
函数调用的时候并不会直接执行 下一句,而是调到函数体内部 依次执行语句。
形参和实参
type()
这个函数就需要传入参数,才能给出类型判断。
函数内部,实参会被赋值给形参。
在函数内部,变量跟形参是局部的,只存在于这个函数内部。
有返回值和无返回值
result = math.sqrt(5) #有返回值的函数
#我们定义了一个无返回值的函数
def print_cat():
print "cat"
为什么要有函数
- 新建一个函数,可以让你有机会给一组语句明明,可以让代码更易读和更易调试
- 函数可以通过减少重复代码是程序更短小。 可复用。
- 将一长断程序拆分成几个函数以后,可以对每一个函数单独进行调试。再讲他们封装起来成为完整的产品
导入模块
impot math
该方式我们已经使用过。
from math import pi
从math里面导入 pi模块。
术语表(新手建议阅读并尝试理解)
- 函数(function): 一个有名称的语句序列,可以进行某种有用的操作。函数可以接收或者不接受参数。
- 函数定义(function definition):一个用来创建新的函数的语句,指定函数名称参数以及它的执行序列。
- 函数对象(function object): 函数定义所创建的值。函数名可以用作变量来引用一个函数对象。
- 函数头(header):函数定义的第一行
- 函数体(body):函数定义内的语句序列
- 形参(parameter):函数内使用的用来引用作为实参传入的值的名称。
- 函数调用(function call):执行一个函数的语句。它由函数名称和参数列表组成。
- 实参(argument):当函数调用时,提供给他的值。这个值会被赋值给对应的形参。
- 局部变量(local variable):函数内部定义的变量。局部变量只能在函数体内使用。
- 返回值(return value):函数的结果。如果函数被当做表达式调用,返回值就是表达式的值
- 有返回值函数(fruitful function):返回一个值的函数
- 无返回值函数(void function): 没有返回值的函数
- 模块(module):一个包含相关函数以及其他定义的集合的文件
- import语句(import statement):读入一个模块文件,并创建一个模块对象的语句。
- 模块对象(module object):使用import语句时创建的对象,提供对模块定义的值的访问。
- 句点表示法(dot notation):调用另一个模块中的函数的语法,使用模块名加上一个句点符号,再加上函数名。
- 组合(composition):使用一个表达式作为更大的表达式的一部分,使用语句作为更大的语句的一部分
- 执行流程(flow of execution):程序运行中语句执行的顺序