最近要回学校开始做毕设了,准备做个有关算法的,听说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。
输出到窗口
>>>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):