python 内置函数Built-in Functions

python 内置函数文档链接

尝试将python的内置函数进行解释及分类

内置函数分类
反射操作 在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性
__import__() 导入模块 __import__('sys').path
isinstance() 判断对象是否是某个类的实例 isinstance('abc', str) = True
issubclass() 判断对象是否是某个类的子类的实例 issubclass(str, str) = True
hasattr() 判断对象是否含有某个属性 hasattr(str, 'join') # ''.join([1, 2])
getattr() 获取对象的某个属性 getattr(str, 'join')
setattr() 设置对象的某个属性 setattr(p, 'name', 'xiaoming')
delattr() 删除对象的某个属性 delattr(p, 'name')
callable() 检测对象是否可被调用 callable(str) = True
变量操作
globals() 回当前作用域内的全局变量和其值组成的字典 globals()
locals() 返回当前作用域内的局部变量和其值组成的字典 locals()
交互操作
print() 向标准输出对象打印输出 print('123')
input() 读取用户输入值 p = input()
文件操作
open() 打开某个文件 with open('/test.txt', 'rb') as f
编译执行
compile() 将字符串编译为代码或者AST对象,使之能够通过exec语句来执行或者eval进行求值 compile('1+2', '', 'eval')
eval() 执行动态表达式求值 eval('1+2+3+4') = 10
exec() 执行动态语句块 exec('p=2+3') print(p) # 5
repr() 返回一个对象的字符串表现形式(给解释器) repr(str)
装饰器
property() 标示属性的装饰器 @property
classmethod() 类方法的装饰器 @classmethod
staticmethod() 静态方法的装饰器 @staticmethod
序列操作
all() 判断对象内部所有元素是否全部不为False all([1, 2, 3, 0]) = False
any() 判断对象内部是否有元素不为False any([0, 0, 0, 0, 1]) = True
filter() 用一个函数作用于可迭代对象的每一个元素,筛选出一个新的迭代器 list(filter(lambda p:p <3, [1, 2, 3])) = [1, 2]
next() 返回可迭代对象的下一个元素,没有会报错 next(iter([1, 2, 3])) = 1
map() 用一个函数作用于可迭代对象的每一个元素,生成一个新的迭代器 list(map(lambda p:p**2, [1, 2, 3])) = [1, 4, 9]
sorted() 数组排序,可传入一个key函数作为判断 sorted(['2', '1', '3'], key=int, reverse=True) = ['3', '2', '1']
reversed() 倒序 list(reversed(['2', '1', '3'])) = ['3', '1', '2']
zip() 元组操作 list(zip([1, 2, 3], [1, 2, 3])) = [(1, 1), (2, 2), (3, 3)]
对象操作
help() 获取对象的帮助信息 help(str)
id() 获取对象的唯一标识符 id('123')
dir() 返回对象的或者当前作用域内的属性列表 dir(str)
hash() 获取对象的哈希值 hash('123')
vars() 返回当前作用域内的局部变量和其值组成的字典,或者返回对象的属性列表 vars()
ascii() 返回对象的可打印表字符串表现方式 ascii('简书') = '\u7b80\u4e66'
type() 返回对象的类型,或者根据传入的参数创建一个新的类型 Person = type('Person', (), {'name':'python ~'}) p = Person() p.name
len() 获取对象的长度 len('123') = 3
format() 格式化显示值 format(123, 'b') = 1111011
数值计算
abs() 绝对值函数 abs(-1) = 1
divmod() 除余函数 divmod(11,3) = 3(整除数),2(余数)
pow() 函数 pow(2, 3) = 2**3 = 8
max() 最大值函数 max([(1, 2), (2, 3), (3, 1)], key=lambda p:p[1]) = (2,3)
min() 最小值函数 min([(1, 2), (2, 3), (3, 1)], key=lambda p:p[1]) = (3,1)
sum() 求和函数 sum([1, 2, 3]) = 6
round() 四舍五入函数 round(1.12345, 3) = 1.123 # 第二个参数为位数约束
类型转换
bool() 转换为bool bool('') = bool(0) = bool(False) = False
bytearray() 转换为字节数组 bytearray('字节', encoding='utf8')
bytes() 转换为不可变字节数组 bytes('字节', encoding='utf8')
float() 转换为float float(1) = 1.o
int() 字符串或者浮点数转换为int int(10.0) = int('10') = 10
hex() 由其他进制转换为十六进制 hex(10) = oxa
oct() 由其他进制转换为八进制 oct(16) = 0o20
bin() 由其他进制转换为二进制 bin(8) = 0b1000
complex() 由其他进制或字符串转换为复数 complex('1+2j') = complex(1+2j) = (1+2j)
chr() 数字转换为unicode chr(48) = 0
ord() unicode字符串转换为数字 ord('0') = 48
str() 创建一个新的str对象 str(123) = '123'
list() 创建一个新的list对象 list([1, 2, 3]) = [1, 2, 3]
object() 创建一个新的object对象 obj = object()
tuple() 创建一个新的tuple对象 tuple([1, 2, 3] = (1,2, 3)
set() 创建一个新的set对象 set(range(3)) = {0, 1, 2}
memoryview() 创建一个新的内存查看对象 memoryview(b'1234')[0] = 49 传入参数必须为byte-like类型,返回为unicode迭代器
dict() 创建一个新的dict对象 dict({'0':0}) = {'0': 0}
frozenset() 创建一个新的不可变集合 frozenset([1, 2, 3]) = frozenset({1, 2, 3})
enumerate() 创建一个枚举对象 enumerate([1, 2, 3, 4]) 迭代器返回为(index, item)
range() 创建一个新的range对象 range(start, stop, step)
iter() 创建一个新的可迭代对象 iter([1, 2, 3]).__next__() = 1
slice() 创建一个新的切片对象 list[slice(start, stop, step)]
super() 创建一个新的子类和父类关系的代理对象 super().__init__()
Built-in Functions
abs() dict() help() min() setattr()
all() dir() hex() next() slice()
any() divmod() id() object() sorted()
ascii() enumerate() input() oct() staticmethod()
bin() eval() int() open() str()
bool() exec() isinstance() ord() sum()
bytearray() filter() issubclass() pow() super()
bytes() float() iter() print() tuple()
callable() format() len() property() type()
chr() frozenset() list() range() vars()
classmethod() getattr() locals() repr() zip()
compile() globals() map() reversed() __import__()
complex() hasattr() max() round()
delattr() hash() memoryview() set()
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 218,204评论 6 506
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,091评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,548评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,657评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,689评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,554评论 1 305
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,302评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,216评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,661评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,851评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,977评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,697评论 5 347
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,306评论 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,898评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,019评论 1 270
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,138评论 3 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,927评论 2 355

推荐阅读更多精彩内容

  • 1.abs()函数返回数字的绝对值。 语法: abs(x) 参数x:数值表达式,可以是附属,浮点数,整数...
    以后的以后_hzh阅读 399评论 0 0
  • 内置函数Python解释器内置了许多功能和类型,总是可用的。他们是按字母顺序列在这里。 abs(x)返回一个数的绝...
    uangianlap阅读 1,239评论 0 0
  • Python内置函数详解——总结篇 ** 引 言** ** 数学运算** abs:求数值的绝对值>>> abs...
    yutiansut阅读 736评论 0 1
  • 第5章 引用类型(返回首页) 本章内容 使用对象 创建并操作数组 理解基本的JavaScript类型 使用基本类型...
    大学一百阅读 3,234评论 0 4
  • 今年的8月3日,太阳刚露白,我们象往日一样步行上山。当我们走到天目山景区入口处,遇‘’来燕山庄‘’老板娘韦大姐,她...
    妈咪张阅读 623评论 2 2