1、内置函数与标准库函数区别

  • Python为了方便用户的一些操作,将一些常用的功能封装成了函数放在解释器里面,这些函数就叫做内置函数
  • 内置函数是解释器的一部分,它随着解释器的启动而生效,可以直接使用,不需要导入某个模块。
  • Python 标准库相当于解释器的外部扩展,它非常庞大,包含了很多模块,但它并不会随着解释器的启动而启动,要想使用某个函数,必须提前导入对应的模块,否则函数是无效的。
  • 一般来说,内置函数的执行效率要高于标准库函数。
  • 内置函数的数量必须被严格控制,否则 Python 解释器会变得庞大和臃肿。一般来说,只有那些使用频繁或者和语言本身绑定比较紧密的函数,才会被提升为内置函数。
  • 注意:不要使用内置函数名字作为标识符,虽然不会报错,但是可能会影响内置函数使用。

2、内置函数查看

  • 查看方法:dir(__builtins__) 可以查看到所有的内置函数。

3、函数详解

  • 3.1 数学运算(10个) 
  1. abs(x)            返回绝对值。参数可以是一个整数或浮点数。 如果参数是一个复数,则返回它的模。              
  2. pow(a, b)    求a的b次幂, 如果有三个参数. 则求完次幂后对第三个数取余       
  3. sum()          求和       
  4. min()      求最小值       
  5. max()      求最大值
  6. divmode()    返回商和余数       
  7. round()        四舍五入      
  8. bin(x)    将一个整数转变为一个前缀为“0b”的二进制字符串。     
  9. otc()    将给的参数转换成八进制       
  10. hex()    将给的参数转换成十六进制
print(abs(-2))  # 绝对值:2
print(divmod(20,3)) # 求商和余数:(6,2)
print(round(4.50))   # 五舍六入:4
print(round(4.51))   #5
print(pow(10,2,3))  # 如果给了第三个参数. 表示最后取余:1
print(sum([1,2,3,4,5,6,7,8,9,10]))  # 求和:55
print(min(5,3,9,12,7,2))  #求最小值:2
print(max(7,3,15,9,4,13))  #求最大值:15
  • 3.2 格式转换(6个) 
#1、bin(x) 将一个整数转变为一个前缀为“0b”的二进制字符串。
bin(10) #0b1010
bin(-10) #-0b1010
  • 3.3 数据类型转换
  1. bool() : 函数用于将给定参数转换为布尔类型,如果没有参数,返回 False。bool 是 int 的子类。
  2. int : 整型(整数)
  3. float : 浮点型(小数)
  4. complex : 复数
  5. bytes()    把字符串转化成bytes类型
  6.  bytearray()    返回一个新字节数组. 这个数字的元素是可变的, 并且每个元素的值得范围是[0,256)
  7. str()  将数据转化成字符串 
  8. list()        将一个可迭代对象转换成列表      
  9. tuple()    将一个可迭代对象转换成元组
  10. dict() 创建一个字典
  11. set ()创建一个集合
  12. frozenset()    创建一个冻结的集合. 冻结的集合不能进行添加和删除操作

 

  • 3.4 字符串操作
  1. repr()    返回一个对象的string形式
  2. eval()        执行字符串类型的代码. 并返回最终结果
  3. exec()       执行字符串类型的代码
  4. compile()   将字符串类型的代码编码. 代码对象能够通过exec语句来执行或者eval()进行求值
  5. ord()    输入字符找带字符编码的位置       
  6. chr()    输入位置数字找出对应的字符       
  7. ascii(object)   返回一个表示对象的字符串, 但是对于字符串中的非 ASCII
  8. format()     与具体数据相关, 用于计算各种小数, 精算等.

 

  1. len()    返回一个对象中的元素的个数 
  2. sorted()    对可迭代对象进行排序操作 (lamda)  
  3. enumerate()    获取集合的枚举对象
  4. reversed()    将一个序列翻转, 返回翻转序列的迭代器       
  5. slice()    列表的切片
  6. all(iterable)     如果 iterable 的所有元素均为真值(或可迭代对象为空)则返回 True     
  7. any(iterable)     如果 iterable 的任一元素为真值则返回 True。 如果可迭代对象为空,返回 False
  8. zip()
  9. map
  10. filter()

 

  • IO操作
  • print() : 打印输出
  • input() : 获取用户输出的内容
  • open() : 用于打开一个文件, 创建一个文件句柄
  • help() : 函数用于查看函数或模块用途的详细说明
  • dir() : 查看对象的内置属性, 访问的是对象中的__dir__()方法
  • callable() : 用于检查一个对象是否是可调用的. 如果返回True, object有可能调用失败, 但如果返回False. 那调用绝对不会成功

 

 

  • hash() : 获取到对象的哈希值(int, str, bool, tuple).   hash算法:(1) 目的是唯一性 (2) dict 查找效率非常高, hash表.用空间换的时间 比较耗费内存
  • id() :  获取到对象的内存地址
  • locals()      返回当前作用域中的名字
  • globals()    返回全局作用域中的名字

 

  • 迭代器和生成器
  • range()       生成数据   
  • next()         迭代器向下执行一次, 内部实际使⽤用了__next__()⽅方法返回迭代器的下一个项目   
  • iter()           获取迭代器, 内部实际使用的是__iter__()⽅方法来获取迭代器

 

 

  • __import__() :  用于动态加载类和函数
  • staticmethond返回函数的静态方法。
  • classmethod 把一个方法封装成类方法。
  • compile() 函数将一个字符串编译为字节代码。
  • delattr 函数用于删除属性。
  • getattr() 函数用于返回一个对象属性值。
  • setattr() 函数对应函数 getattr(),用于设置属性值,该属性不一定是存在的。
  • hasattr() 函数用于判断对象是否包含对应的属性。
  • isinstance() 函数来判断一个对象是否是一个已知的类型,类似 type()。
  • issubclass() 方法用于判断参数 class 是否是类型参数 classinfo 的子类。
  • memoryview() 函数返回给定参数的内存查看对象(memory view)。
  • property() 函数的作用是在新式类中返回属性值。
  • vars() 函数返回对象object的属性和属性值的字典对象。
  • super() 函数是用于调用父类(超类)的一个方法。
  • python staticmethod 返回函数的静态方法。
  • object()返回一个没有特征的新对象。