Fork me on GitHub

Python内置函数详解

        

      此文参考python文档,然后结合自己的理解,写下来,一方面方便自己,让自己好好学习,顺便回忆回忆;另一方面,让喜欢的盆友也参考一下。

      经查询,3.6版本总共有68个内置函数,主要分类如下:

          数学运算(7个)

          类型转换(24个)

          序列操作(8个)

          对象操作(9个)

          反射操作(8个)

          变量操作(2个)

          交互操作(2个)

          文件操作(1个)

          编译执行(4个)

          装饰器(3个)

  数学运算:

数学运算
abs() 求数值的绝对值
divmod() 返回两个数值的商和余数
max() 返回可迭代对象哄的元素中的最大值或者所有参数的最大值
min() 返回可迭代对象哄的元素中的最大值或者所有参数的最小值
pow() 返回两个数值的幂运算或者其与指定整数的模值
round() 对浮点数进行四舍五入值
sum() 对元素类型是数值的可迭代对象中的每个元素求和

类型转换:

类型转换
bool() 根据传入的参数的逻辑值创建一个新的布尔值
int() 根据传入的参数创建一个新的整数
float() 根据传入的参数创建一个新的浮点数
complex() 根据传入的参数创建一个新的复数
str() 返回一个对象的字符串表现形式
bytearray() 根据传入的参数创建一个新的字节数组
bytes() 根据传入的参数创建一个新的不可变字节数组
memoryview() 根据传入的参数创建一个新的内存查看对象
ord() 返回Unicode字符对应的整数
chr() 返回整数所对应的Unicode字符
bin() 将整数转化为2进制字符串
oct() 将整数转化为8进制字符串
hex() 将整数转化为16进制字符串
tuple() 根据传入的参数创建一个新的元组
list() 根据传入的参数创建一个新的列表
dictionary() 根据传入的参数创建一个新的字典
set() 根据传入的参数创建一个新的集合
frozenset() 根据传入的参数创建一个不可变集合
enumerate() 根据可迭代对象创建枚举对象
range() 根据传入的参数创建一个新的range对象
iter() 根据传入的参数创建一个新的可迭代对象
slice() 根据传入的参数创建一个新的切片对象
super() 根据传入的参数创建一个新的子类和父类关系的代理对象
object() 创建一个新的object对象

序列操作:

序列操作
all() 判断可迭代对象的每个元素是否都为True值
any() 判断可迭代对象的元素是否为True值的元素
filter() 使用指定方法过滤可迭代对象的元素
map() 使用指定方法取作用传入的每个迭代对象的元素,生成新的可迭代对象
next() 返回可迭代对象的下一个元素值
reversed() 反转序列生成新的可迭代对象
sorted() 对可迭代对象进行排序,返回一个新的列表
zip() 聚合传入的每隔迭代器中的相同位置的元素,返回一个新的元祖类型迭代器

对象操作:

对象操作
help() 返回对象的帮助信息
dir() 返回对象或者当前作用域内的属性列表
id() 返回对象的唯一标识符
hash() 获取对象的哈希值
type() 返回对象的类型,或者根据传入的参数创建一个新的类型
len() 返回对象的长度
ascii() 返回对象的可打印表字符串表现方式

反射操作:

反射操作
_import_:() 动态导入模块
isinstance() 判断对象是否是类或者元祖中任意类元素的实例
issubclass() 判断类是否是另一个类或者类型元组中任意类元素的子类
hasattr() 检查对象是否含有属性
getsttr() 获取对象的属性值
setattr() 设置对象的属性值
delattr() 删除对象的属性
callable() 检查对象是否可被调用
format() 格式化显示值
var() 返回当前作用域内的局部变量和其值组成的字典,或者返回对象的属性列表

变量操作:

 

变量操作
globals() 返回当前作用域内的全局变量和其值组成的字典
locals() 返回当前作用域内的局部变量和其值组成的字典

交互操作:

交互操作
print() 向标准输出对象打印输出
input() 读取用户输入值

文件操作:

文件操作
open() 使用指定的模式和编码打开文件,返回文件读取对象

编译执行;

编译执行
compile() 将字符串编译为代码或者AST对象,使之能够通过exec语句来执行或者eval进行求值
eval() 执行动态表达式求值
exec() 执行动态语句块
repr() 返回一个对象的支付穿表现形式

装饰器:

装饰器
property() 标示属性的装饰器
classmethod() 标示方法为类方法的装饰器
staticmethod() 标示方法为静态方法的装饰器

 

下面谈一下Python的内建函数(hasattr(object,name))

     说明:判断对象object是否包含名为name的特性(hasattr是通过调用getattr(object,name)是否抛出异常来实现的)

  参数object :对象

  参数name :  特性名称

示例:

hasattr(list,'add')
Out[4]: False
hasattr(list,"append")
Out[5]: True

 

 hash(object)

说明:如果对象object为哈希表类型,返回对象object的哈希值。哈希值为整数。在字典查找中,哈希值用于快速比较字典的键。两个数值如果相等,则哈希值也相等。

 参数object:对象

示例:

hash(tuple)
Out[9]: 110906106
hash(list)
Out[10]: 110904189
hash(int)
Out[11]: 110904395
hash(1)
Out[12]: 1
hash(1.0)
Out[13]: 1

 

 

   help([object])

说明:调用内建的帮助系统。如果不包含参数,交互式帮助系统将在控制台启用。如果参数为字符串,则可以是模块,函数,类,方法等名称,并且帮助页面将会在控制台打印。参数也可以是任意对象。

   hex(x)

  说明:将整数x转化为16进制字符串。如果要获取浮点数的16进制字符串,则可以用float.hex(x)。

 参数 x :整数

示例:

 

hex(3)
Out[14]: '0x3'
hex(4)
Out[15]: '0x4'
hex(15)
Out[16]: '0xf'
float.hex(3.5)
Out[17]: '0x1.c000000000000p+1'
float.hex(4.0)
Out[18]: '0x1.0000000000000p+2'

    bin(x)

说明:将整数转化为2进制字符串

>>> bin(65)
'0b1000001'
>>> bin(89)
'0b1011001'
>>> bin(99)
'0b1100011'
>>> bin(256)
'0b100000000'

  函数详解: https://docs.python.org/3/library/functions.html?highlight=built#ascii 

                                           https://docs.python.org/2/library/functions.html

 

posted @ 2017-09-10 20:43  战争热诚  阅读(1561)  评论(0编辑  收藏  举报