您的位置:首页 > 编程语言 > Python开发

python笔记(11.30-2.0-2.4)

2018-12-02 21:51 176 查看

2.0-2.4 内建函数
一个函数可以说是一个逻辑或者功能.
使用ipython查看python的内建函数
builtin. 显示一共有137个内建函数
也可以登录https://docs.python.org/2/library 官网去查询

•返回数字的绝对值
abs() abs(-10) 返回的是10

•取列表最大最小值max() min() 括号内的参数一般是序列或者字符串序列或者元组
max([1,2,3,4,5]) 返回最大值5

•len() 取序列或者字符串长度,也可以统计字典和元组有几个元素
•divmod() divmod(x,y) 返回2个数的商和余数
•pow() 接受3个参数,第三个参数可选,如果是2个参数则返回 xy pow()
如果是3个参数,则返回x
y % z
•round() round(12) 返回一个浮点数12.0 round(12.123) 返回的是四舍五入的浮点数 round(number,[可选参数]) 可选参数表示保留的小数位个数

callable() 判断一个对象是否可以被调用(类,函数都是可以被调用,变量不能被调用)

type() 查看对象是什么类型的
isinstance() 判断对象是否是给定的类型的 返回true或false
isinstance(对象,类型) 如果对象属于第二个参数类型 返回true
l = [1,2,3] isinstance(l,list) l是列表,返回true
第二个参数也可以是个元组,判断第一个参数对象是否是元组中的
类型

cmp(x,y) 比较两个对象值,如果x<y 返回-1 如果x>y 返回1 如果x=y 返回0,
还可以比较两个字符串 cmp('hello','hello')--->返回是0
range() 返回的是个数字列表
xrange() 返回的是个对象 效率比range高

常用的类型转换函数
int() 将数字或者小数转换成×××,也可以把字符串数字转换成××× 比如int('12') 将返回12
long() 将数字转换成长×××
float() 转换成浮点数, 只有一个参数
complex() 转换成复数

str() 转换成字符串,可以把列表或者字典转换成字符串
list() 返回的是个列表,如果参数为空,则返回是空列表,如果参数是可迭代的对象,返回的是迭代的每个元素
tuple() 返回的是个元组,如果参数为空,返回空的元组,如果参数是可迭代的对象,返回的是迭代的每个元素
hex() 转换成十六进制 参数是int或者long 把一个数变成十六进制的字符串
oct() 转换成8进制
chr() chr(i) 返回的是一个字符, 这个方法返回的是asc码对应的字符 chr() 中的参数范围是0-256
ord() 和chr()相反 参数是字符 返回的是字符所对应的asc码
eval() 将字符串当成有效的表达式来求值 evel('0xa') 将返回10 eval("['a','b',1]") 也可以是列表

字符串处理函数(方法)
字符串方法 ipython中 str. 按tab就可以查看字符串可以使用的所有方法
help(str.capitalize) 查看方法的帮助,注意和查看函数帮助的区别
str.capitalize() 将原字符串的首字母大写后返回新的字符串,注意没有参数In [59]: s
Out[59]: 'hello'
In [60]: s.capitalize()
Out[60]: 'Hello'
str.replace() S.replace(old, new[, count]) -> string 将old替换成new字符串, count表示替换次数
str.split() S.split([sep [,maxsplit]]) -> list of strings 参数可选,不加参数返回的是字符串列表 默认使用空格切分 str.split() 可以在里面指定分割符,split方法比较常用
s.join() S.join(iterable) -> string 将可迭代的对象变成字符串 将列表的每个元素链接成字符串

string模块
使用时 import string
string.lowercase 打印所有小写字母 string.uppercase 打印所有大写字母
string.captalize(s) 和 captalize()用法一致
string.replace(old) 和replace()内置函数使用一致

序列处理函数:
filter() 过滤 filter(function or None, sequence) -> list, tuple, or string filter函数有2个参数,第一个参数是一个函数或者none,第二个参数是个序列 返回的是列表,元组或者字符串,如果第一个参数是none,则不对sequence进行处理,如果第一个参数是个函数,则sequence中的每一个元素被这个函数处理
def f(x):
if x%2==0:
return True
filter(f,range(1,10)) f函数对range(1,10)元素进行处理
[0, 2, 4, 6, 8] 返回列表

zip() 把一个或多个序列组成一个大的列表,列表的每一个元素都是一个元组
l1 = [1,2,3]
l2=['a','n','c']
zip(l1,l2)
[(1, 'a'), (2, 'n'), (3, 'c')] 每个列表各取一个元素组成元组,再存放到一个新的列表中去
dict(zip(l2,l1)) 还可以通过这种方法创造一个字典

map() map(function, sequence[, sequence, ...]) -> list 第一个参数是可以函数,也可以是None,后面的参数是sequence 返回一个list
map(None,l1,l2,l3)

reduce()
filter(),map(),reduce() 中第一个参数函数可以使用lambda匿名函数来写
In [131]: filter(lambda x: x%2==0,range(10))
Out[131]: [0, 2, 4, 6, 8]
•filter(lambda x:x %2 ==0, range(10))
[0, 2, 4, 6, 8]
•map(lambda x,y:x*y, range(5),range(5)) 每个序列相应的元素相乘
[0, 1, 4, 9, 16]
•reduce(lambda x,y:x+y, range(1,101))
5050

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  python 笔记