(六)Python 常用内置函数

数学相关 类型转换与判断 序列相关 排序相关 枚举与迭代、遍历 输入输出与格式化 其他
abs() type() list() sorted() map() print() id()
pow() isinstance() set() reversed() reduce() input() dir()
max() int() tuple() filter() eval()
min() hex() dict() iter()
divmod oct() frozenset() next()
sum() bin() enumerate()
len() float() zip()
round() str()
range() bool()
chr()
ord()

1. 数学相关

  • range(M, N, i) 每隔 i 个数,输出 [M, N-1] 之间的整数。

    for i in range(1, 10, 2):
        print(i, end=' ')
    # 1 3 5 7 9
    
  • abs(x)

    返回一个数(整数、浮点数)的绝对值,或者返回一个复数的模。返回类型是 float

    >>> abs(-10)
    10
    >>> abs(3 - 4j)
    5.0
    
  • pow(a, b) 获取 a 的 b 次方,返回 a^b^ (a ** b)。 当 a 为负数,而 b0.5 ,即求平方根的时候,返回复数。

    >>> pow(-2, 0.5)
    (8.659560562354934e-17+1.4142135623730951j)
    
  • max(x) 返回 x (数字、列表、元组)中的最大值。

    >>> max(1, 2, 3)
    3
    
  • min(x) 返回 x (数字、列表、元组)中的最小值。

    >>> t = (1, 2, 3)
    >>> min(t)
    1
    
  • divmod(x,y) 进行整除和取余运算,返回一个元素为商和余数的元组。

    >>> divmod(-10, 3)
    (-4, 2)
    
  • sum(x) 求 x (数字、列表、元组)中的元素的和值。

    >>> l = (1, 2, 3)
    >>> sum(l)
    6
    
  • len(x) 返回 x(数字、字符串)的长度或者 x(列表、元组、集合)所含元素的个数。

    >>> s = {'a', 'b', 'c'}
    >>> len(s)
    3
    
  • round(x, y) 对 x 进行四舍五入,保留 y 位小数,y 默认为 0。 常用于浮点数的比较。

2. 类型转换与判断

2.1 类型判断

  • type(x) 返回 x 的类型,返回值是 type 型。

  • isinstance(number, type) number 是被判断的数据,type 是指定的数据类型。

    >>> isinstance(0.3, float)
    True
    

2.2 类型转换

  • int(num_str)

    将数字字符串转换为数字,str 必须是数字型 string。 常配合 input() 使用, 用于数字的输入。

  • hex(int)

    将整数转换为 16 进制。(返回值是 str 型)

  • oct()

    将整数转换为 8 进制。(返回值是 str 型)

  • bin(int)

    将整数转换为二机制。(返回值是 str 型)

  • float(x)

    x 可以是 intstr 型,转换为浮点数型。

  • str(x)

    将 x(数字、布尔值)转换为 str 型。

  • bool(x)

    将 x(数字、字符串、元组、列表...)转换位对应的布尔值。

    >>> bool([])
    False
    
  • chr(int)

    将整数转换为相应的 ASCII 码

    >>> chr(65)
    'A'
    
  • ord(str)

    将字符转换为数字

3. 序列相关

  • list(x)

    将 x(数字、字符串、元组、集合、字典)转换列表。

    >>> list((1, 2, 3))
    [1, 2, 3]
    >>> list({'a':1, `b`:2, 'c':3}) # 将字典的键值转换为列表
    ['a', 'b', 'c']
    >>> list({'a':1, `b`:2, 'c':3}.item()) # 将字典中的元素转换为列表
    [('a', 1), ('b', 2), ('c', 3)]
    
  • set(x)

    将 x(数字、字符串、列表、元组)转换为集合。

  • tuple(x)

    将 x(数字、字符串、列表、集合)转换为元组。

  • dict(x)

    将 x 转换为字典。

    >>> dict([('a', 1), ('b', 2), ('c', 3)])
    {'a': 1, 'b': 2, 'c': 3}
    
  • frozenset([iterable])

    frozenset() 函数返回一个冻结的 set 集合,其不能添加和删除元素

4. 排序相关

  • sorted(x) 对 x(数字、列表、元组)进行从小到大排序。

    原型是:sorted(iterable, cmp=None, key=None, reverse=False)

    • cmp: 比较函数。
    • key: 主要用来比较的元素
    • reverse: 排序方式:True:降序排列;False:升序排列
    >>> t = (2, 1, 3)
    >>> sorted(t)
    (1, 2, 3)
    >>> sorted(t, reverse=True)
    (3, 2, 1)
    
  • reversed(x) 反转序列 x(列表、元组) 格式语法:list(reversed(x))tuple(reversed(x))

5. 枚举与迭代、遍历

  • map()
  • reduce()
  • filter()
  • iter()
  • next()
  • enumerate(iterable[, start])
  • zip()

更多请参考 Python 官网内置函数

6. 输入输出与格式化

1. input()

  1. 使用:

    x = input()
    
  2. 注意: input() 函数的接收输入后,其返回值默认是 str 类型。要输入其他类型就需要强制类型转换。

    n = int(input())
    f = float(input())
    t = bool(input())
    
  3. 拓展用法

  4. 输入多个,以空格分隔:

    a, b, c = input().split()
    a, b, c = int(a), int(b), int(c)
    
  5. 输入多个,以逗号 , 分隔:
    a, b, c = input().split(',')
    a, b, c = int(a), int(b), int(c)
    
  6. 如果遇到其他类型的,请举一反三,随机应变。

2. print()

3. eval()

7. 其他

  • id()
  • dir()