python标准库学习系列1-BIFS

[b]abs(x)[/b]
[*]返回数值的绝对值,参数x为整形或者浮点型

[b]all(iterable)[/b]
[*]判断迭代器对象中的元素是否全为真,若是则返回真,等价代码如下:

def all(iterable):
for element in iterable:
if not element:
return False
return True

[b]any(iterable)[/b]
[*]判断迭代器对象中的元素是否有任意一个元素为真,若是则返回真。

[b]basestring()[/b]
[list]
[*]str 和 unicode的超类,不能被实例化。但是可以用于判断一个对象是否是字符串型的,isinstance(obj, basestring)=isinstance(obj, (str, unicode))
[/list]
[b]bin(x)[/b]
[list]
[*]将整形的数值转换为字符串类型的2进制格式,若x不是一个整形,则必须拥有返回int(long)类型的__index__()方法
[/list]
[b]bool(x)[/b]
[list]
[*]将对象转换成bool类型的值
[/list]
[b]bytearray([source[, encoding[, errors]]])[/b]
[list]
[*]将source对象转换成一个字节数组,如果1.source是字符串类型的,则encoding参数必须给定,返回source.encode()。2.如果source是一个整数,则数组大小值将被设置为source,每个数组元素都是个空字节(0)。3.如果是个可迭代对象,则每个元素都必须是[0,256)之间的整数,该迭代对象的内容即位数组内容。
[/list]
[b]callable(object)[/b]
[list]
[*]判断对象是否为可调用对象
[/list]
[b]chr(i)[/b]
[list]
[*]将i转换成对应的ascii字符,0<=i<=255
[/list]
[b]cmp(x,y)[/b]
[list]
[*]比较函数
[/list]
[b]delattr(object, name)[/b]
[list]
[*]删除objct中名为name的属性,等同于del object.name
[/list]
[b]dir([object])[/b]
[list]
[*]不带参数返回当前的local scope,否则返回参数的属性列表
[/list]
[b]divmod(a, b)[/b]
[list]
[*]返回a,b商和余数的元组,相当于(a // b, a % b).
[/list]
[b]enumerate(sequence, start=0)[/b]
[*]返回列表元素和其位置的元组的enumerate对象,可用于循环迭代

>>> seasons = ['Spring', 'Summer', 'Fall', 'Winter']
>>> list(enumerate(seasons))
[(0, 'Spring'), (1, 'Summer'), (2, 'Fall'), (3, 'Winter')]

[b]filter(function, iterable)[/b]
[list]
[*]函数式编程的支持函数,过滤出使得function返回True的iterable中的元素,如果iterable是字符串类型或者元组类型(tuple),则返回字符串或者tuple。如果function参数为None,则元素本身为真的被返回。
filter(function, iterable)等价于[item for item in iterable if function(item)] ,如果function为None则,等价于[item for item in iterable if item]
[/list]
[b]getattr(object, name[, default])[/b]
[list]
[*]返回object名字为name的属性值,如果不存在该属性,若有default参数则返回default,否则抛出异常
[list]
[b]globals()[/b]
[list]
[*]返回当前模块的全局符号表,它返回的是定义时的模块,而不是引入模块的全局符号表。
[/list]
[b]hasattr(object, name)[/b]
[list]
[*]判断object是否拥有名为name的属性。
[/list]
[b]hash(object)[/b]
[list]
[*]返回对象的hash值,注意,相等的对象应该返回相同的哈希值
[/list]
[b]hex(x)[/b]
[list]
[*]将x转成16进制表示的字符串,若要得到float型的十六进制表示,使用 float.hex()
[/list]
[b]id(object)[/b]
[list]
[*]返回对象全局唯一的id值,唯一标识一个object
[/list]
[b]isinstance(object, classinfo)[/b]
[list]
[*]判断一个对象是否是classinfo的实例。支持类型继承体系。从2.2之后,classinfo,可以是包含多个类型的元组对象
[/list]
[b]issubclass(class, classinfo)[/b]
[list]
[*]判断class是否是classinfo的子类。继承体系。从2.2之后,classinfo,可以是包含多个类型的元组对象
[/list]
[b]iter(o[, sentinel])[/b]
[list]
[*]返回一个迭代对象,它的行为依据是否存在sentinel而不同,1如果不存在sentinel参数,则o必须是个集合型对象,即它必须支持__iter__()方法,或者接收一个从0开始的整形参数的__getitem__(),2如果存在sentinel参数,则o必须是一个可调用对象,返回的迭代对象,每次调用其next()方法,都会调用O(),直到o()==sentinel,则抛出StopIteration
[/list]
[b]len(s)[/b]
[list]
[*]返回集合或者顺序元素的长度
[/list]
[b]locals()[/b]
[list]
[*]返回当前的本地符号表
[/list]
[b]map(function, iterable, ...)[/b]
[list]
[*]支持函数式编程的函数,对每个iterable的元素应用funtion,然后返回应用后的结果列表,若有多个iterable的参数,则function将接收多个参数。该函数总是返回list
[/list]
[b]max(iterable[, key])[/b]
[list]
[*]返回迭代器元素中最大的元素,可以接收一个对比函数(key)
[/list]
[b]min(iterable[, key])[/b]
[list]
[*]返回迭代器元素中最小的元素,可以接收一个对比函数(key)
[/list]
[b]open(name[, mode[, buffering]])[/b]
[list]
[*]以特定的mode打开文件
[/list]
[b]pow(x, y[, z])[/b]
[list]
[*]指数函数,相当于x ** y,如果存在z,则相当于x ** y % z
[/list]
[b]range(stop),range(start, stop[, step])[/b]
[list]
[*]范围函数,range(5) = [0,1, 2, 3, 4],range(1, 5, 2)=[1, 3]
[/list]
[b]reduce(function, iterable[, initializer])[/b]
[*]函数式编程的支持函数.等价代码如下:

def reduce(function, iterable, initializer=None):
it = iter(iterable)
if initializer is None:
try:
initializer = next(it)
except StopIteration:
raise TypeError('reduce() of empty sequence with no initial value')
accum_value = initializer
for x in it:
accum_value = function(accum_value, x)
return accum_value

[b]repr(object)[/b]
[list]
[*]返回对象的字符串表示,object可以通过重定义的__repr__()方法控制结果
[/list]
[b]reversed(seq)[/b]
[list]
[*]返回一个反转的序列
[/list]
[b]round(number[, ndigits])[/b]
[list]
[*]以四舍五入的形式截取小数位,注意round(2.766, 2) = 2.77, round(2.765, 2) = 2.76
[/list]
[b]sorted(iterable[, cmp[, key[, reverse]]])[/b]
[list]
[*]列表排序函数,返回一个排序后的新列表
[/list]
[b]sum(iterable[, start])[/b]
[list]
[*]求和函数
[/list]
[b]zip([iterable, ...])[/b]
[*]支持函数式编程的函数,实例如下:
[code="python"]
>>> x = [1, 2, 3]
>>> y = [4, 5, 6]
>>> zipped = zip(x, y)
>>> zipped
[(1, 4), (2, 5), (3, 6)]
>>> x2, y2 = zip(*zipped)
>>> x == list(x2) and y == list(y2)

[/list]
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值