Python内置函数(二)—— a/b

基于python3.7.2文档:https://docs.python.org/zh-cn/3/library/functions.html

一、abs(x): 返回一个数的绝对值。实参可以是整数或浮点数。如果实参是复数,则返回它的模。

>>> abs(-3-4j)
5.0
>>> abs(-6)
6
>>> abs(6)
6

二、all(iterable):

    1. 若iterable中所有元素都为True(除0、空、None、False外都算True),则返回True;

    2. 若iterable为空,也返回True。(为什么这样??没搞懂设计逻辑

>>> all((1,2,3))
True
>>> all((1,"",3))
False
>>> all(())
True
>>> 

三、any(iterable):

    1. 若iterable中任一元素为真则返回True;

    2. 若iterable为空,则返回False。

四、ascii(object): 返回一个表示object的字符串

>>> ascii(2)
'2'
>>> ascii('hello')
"'hello'"
>>> ascii("world")
"'world'"
>>> ascii([1,2])
'[1, 2]'

五、bin(x):将一个整数转变为一个前缀为”0b“的二进制字符串

>>> bin(5)
'0b101'
>>> bin(12)
'0b1100'
>>> bin(-11)
'-0b1011'

    1. 若x不是int对象,那需要定义__index__()方法返回一个整数;(什么意思?

    2. 如果不一定需要前缀”0b“,还可以使用如下方法:

>>> format(14, '#b'), format(14, 'b'), f'{14:#b}', f'{14:b}'
('0b1110', '1110', '0b1110', '1110')

六、bool([x]):将给定参数转换为布尔类型, 若无参数,返回False。bool是int的子类。

>>> bool()
False
>>> bool(0)
False
>>> bool(1)
True
>>> issubclass(bool, int)
True

七、breakpoint(*args, **kws)  —— 暂时不能很好理解

 

八、bytearray():方法返回一个新字节数组。这个数组里的元素是可变的,并且每个元素的值范围:0<=x<256.

func:class bytearray([source[, encoding[, errors]]])

    args: 1. 如果source为整数,则返回一个长度为source的初始化数组

             2. 如果source为字符串,则按照指定的encoding将字符串转换为字节序列;

             3. 如果source为可迭代类型,则元素必须为[0,255]中的整数;

             4. 如果source为与buffer接口一致的对象,则此对象也可以被用于初始化bytearray;

             5. 如果没有输入任何参数,默认就是初始化数组为0个元素;

>>> bytearray(2)
bytearray(b'\x00\x00')                       # 返回长度为2的初始化数组
>>> bytearray("hello", "utf-8")
bytearray(b'hello')
>>> bytearray([1, 3, 5, 7])
bytearray(b'\x01\x03\x05\x07')
>>> bytearray([6, 256])                      # 元素必须在[0, 255]中 
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: byte must be in range(0, 256)

九、bytes(): 返回一个新的bytes对象,该对象是一个0<=x<256区间内的整数不可变序列。它是bytearray的不可变版本。

class bytes([source[, encoding[, errors]]])

             1. 如果source为整数,则返回一个长度为source的初始化数组;

             2. 如果source为字符串,则按照指定的encoding将字符串转换为字节序列;

             3. 如果source为可迭代类型,则元素必须为[0,255]中的整数;

             4. 如果source为与buffer接口一致的对象,则此对象也可以被用于初始化bytearray;

             5. 如果没有输入任何参数,默认就是初始化数组为0个元素;

 

总结:

    在现阶段嵌入式编程比较多,估计就bin()、format()用的比较多,估计还有abs() ?? 怕是用不上abs()。

 

posted @ 2019-05-20 20:01  Chaclin  阅读(386)  评论(0)    收藏  举报