Python 函数的介绍和用法

最近要回学校开始做毕设了,准备做个有关算法的,听说python运算好一些,特地来学一学。

先从基础开始啊…………………………

函数

可以直接从Python的官方网站查看文档:

http://docs.python.org/2/library/functions.html

 

1.在Python提示符下,输入下面语句,就会显示Python提供的内置函数列表
>>>dir('__builtins__')

>>>abs(_)

内置函数,绝对值或复数的模。

>>>chr()

以单字节整数为参数,返回一个单字符的字符串,其内容是与之对于的ASCII字符。如chr(69)返回'E'。

>>>cmp()

比较字符串,cmp('Xiao','Jian')返回1

>>>coerce()

(可以看成一个数值类型转换函数)有两个参数,都是数字,返回这两个数字的一个列表,将这两个数字的数据类型统一。如coerce(1,2j),返回(1+0j,2j)

>>>complex()

内置函数,把……转换成复数,如complex('2')返回(2+0j),complex('2+3j')返回(2+3j)。

>>>divmod()

内置函数,有两个参数,返回(商,余数)。如divmod(10,2.5),返回(4.0,0.0)。

>>>filter(function,list)

把函数应用于list中的每一项,并返回 从函数中返回真值的项。注:function可以为None,此时删除list中的0或空项。

>>>float()

内置函数,把……转换成浮点数。

>>>floor()

在math模块内,需要import math。向下取整,即向x轴负方向取整。如math.floor(1.9)返回1,math.floor(-2.5)返回-3。

>>>hash()

散列功能,词典键的最精确功能需求是它一定是可散列的。对象的散列值是半唯一的、内部生成的数字,它可用于快速比较。

>>>int()

内置函数,把字符串或者小数转换为一个整数。直接去掉小数部分。如int(5.3)返回5,int('5')返回5。

>>>len(x)

序列x的长度

>>>long()

内置函数,把数字 或 代表整数的字符串 转换成长整型

>>>map(function,list[,list,...])

>>>max()

找出字符串中最大的字符。如:min('find the minimum character'),返回' ',即空格。

>>>min()

找出字符串中最小的字符。如:max('find the maximum character'),返回'x'。

>>>oct()

将十进制数转换成八进制,再变成字符。

>>>ord()

参数是单个的ASCII字符,返回该ASCII字符对应的整数值,如ord('a')返回97。

>>>pow()

内置函数,乘方。如果有第三个参数,则表示乘方的结果对第三参数取余,如pow(2,3)返回8,pow(2,3,4)返回0。

>>>print

输出到窗口

>>>range()

生成一个向量,例如range(m,n,d),从m到n,步长为d;range(m)则生成0:m-1,步长为1的向量。

>>>raw_input()

输入函数,参数为字符串,作为输入时的提示语句。返回值为字符串。

>>>reduce(func)

>>>round()

内置函数,对数字进行四舍五入,第二个参数表示精确到小数点后指定的位数,默认值为0。如round(2.4)返回2,round(1.398,2)返回1.40。

>>>type()

返回某数据的类型

 

************************************************************************************************************* 

2.在Python中,定义一个函数要使用 def 语句,依次写出函数名、括号、括号中的参数和冒号:,然后,在缩进块中编写函数体,函数的返回值用 return 语句返回。

 

3. Python的函数可以返回多值,其实就是返回一个tuple,在语法上,返回一个tuple可以省略括号,而多个变量可以同时接收一个tuple,按位置赋给对应的值,但写起来更方便。

 

4.递归函数的优点是定义简单,逻辑清晰。理论上,所有的递归函数都可以写成循环的方式,但循环的逻辑不如递归清晰。

使用递归函数需要注意防止栈溢出。在计算机中,函数调用是通过栈(stack)这种数据结构实现的,每当进入一个函数调用,栈就会加一层栈帧,每当函数返回,栈就会减一层栈帧。由于栈的大小不是无限的,所以,递归调用的次数过多,会导致栈溢出。

 

5.函数的默认参数的作用是简化调用,你只需要把必须的参数传进去。但是在需要的时候,又可以传入额外的参数来覆盖默认参数值。

我们可以把 n 的默认值设定为 2:

def power(x, n=2):

这样一来,计算就不需要传入两个参数了:

由于函数的参数按从左到右的顺序匹配,所以默认参数只能定义在必需参数的后面:

 

6.如果想让一个函数能接受任意个参数,我们就可以定义一个可变参数:

def fn(*args): print args

可变参数的名字前面有个 * 号,我们可以传入0个、1个或多个参数给可变参数:

可变参数也不是很神秘,Python解释器会把传入的一组参数组装成一个tuple传递给可变参数,因此,在函数内部,直接把变量 args看成一个 tuple 就好了。

定义可变参数的目的也是为了简化调用。假设我们要计算任意个数的平均值,就可以定义一个可变参数:

def average(*args):

 

posted @ 2017-07-17 17:00  LeoNotMoon  阅读(221)  评论(0编辑  收藏  举报