what‘s the 内置函数?
内置函数,内置函数就是python本身定义好的,我们直接拿来就可以用的函数。(python中一共有68中内置函数。)
下面我们由作用不同分别进行详述:(字体加粗的为重点要掌握的)
与作用域相关:global和local
global——获取全局变量的字典
local——获取执行本方法所在命名空间内的局部变量的字典
str类型代码的执行:eval、exec、compile
eval()——将字符串类型的代码执行并返回结果
exec()——将字符串类型的代码执行单不返回结果
compile ——将字符串类型的代码编译。代码对象能够通过exec语句来执行或者eval()进行求值
>>> #流程语句使用exec >>> code1 = ‘for i in range(0,10): print (i)‘ >>> compile1 = compile(code1,‘‘,‘exec‘) >>> exec (compile1) 1 3 5 7 9 >>> #简单求值表达式用eval >>> code2 = ‘1 + 2 + 3 + 4‘ >>> compile2 = compile(code2,‘‘,‘eval‘) >>> eval(compile2) >>> #交互语句用single >>> code3 = ‘name = input("please input your name:")‘ >>> compile3 = compile(code3,‘‘,‘single‘) >>> name #执行前name变量不存在 Traceback (most recent call last): File "<pyshell#29>", line 1, in <module> name NameError: name ‘name‘ is not defined >>> exec(compile3) #执行时显示交互命令,提示输入 please input your name:‘pythoner‘ >>> name #执行后name变量有值 "‘pythoner‘"
与数字相关的:
数字——数据类型相关:bool,int,float,complex
数字——进制转换相关:bin,oct,hex
数字——数学运算:abs(输出为数字的绝对值),divmod(使用方法即divmod(数字1,数字2),输出为(数字1整除数字2后得到的数,余数)),min,max,sum,round(精确的功能),pow(pow的使用方法即pow(数字1,数字2),数字1**数字2,即次方的形式)
print(divmod(7,3))#(2,1) print(round(3.14159,2))#3.14 f = 4.197937590783291932703479 #-->二进制转换的问题 print(f)#4.197937590783292
与数据结构有关:
序列——列表和元组相关的:list和tuple
序列——字符串相关的:str,format,bytes,bytesarry,memoryview,ord(ord与chr互为倒数,不过这不需要掌握),chr(返回表示Unicode代码点为整数i的字符的字符串。例如,chr(97)
返回字符串‘a‘
,同时 chr(8364)
返回字符串‘€‘
),ascii,repr
序列:reversed(用l.reverse,将原列表翻转并赋值,用list(reversed(l)只是将原列表翻转看看,不改变原列表的值也就是说不覆盖),slice(切片的功能)
数据集合——字典和集合:dict,set,frozenset
数据集合:len,sorted(排序功能),enumerate(将一个列表的元素由“索引 值”的形式一一解包出来),all,any,zip,filter(一种过滤的功能),map(一种迭代的功能)
l2 = [1,3,5,-2,-4,-6] print(sorted(l2,key=abs,reverse=True))#[-6, 5, -4, 3, -2, 1] print(sorted(l2))#[-6, -4, -2, 1, 3, 5] print(l2)#[1, 3, 5, -2, -4, -6] l = [‘a‘,‘b‘] for i,j in enumerate(l,1): print(i,j) #1 a 2 b L = [1,2,3,4] def pow2(x): return x*x l=map(pow2,L) print(list(l)) # 结果: [1, 4, 9, 16] def is_odd(x): return x % 2 == 1 l=filter(is_odd, [1, 4, 6, 7, 9, 12, 17]) print(list(l)) # 结果: [1, 7, 9, 17]
其他:
输入输出:input(),print()
input——与用户交互用的
print——打印
#print的源码分析: def print(self, *args, sep=‘ ‘, end=‘\n‘, file=None): # known special case of print """ print(value, ..., sep=‘ ‘, end=‘\n‘, file=sys.stdout, flush=False) file: 默认是输出到屏幕,如果设置为文件句柄,输出到文件 sep: 打印多个值之间的分隔符,默认为空格 end: 每一次打印的结尾,默认为换行符 flush: 立即把内容输出到流文件,不作缓存 """ #有关进度条打印的小知识 import time import sys for i in range(0,101,2): time.sleep(0.1) char_num = i//2 #打印多少个# per_str = ‘%s%% : %s\n‘ % (i, ‘*‘ * char_num) if i == 100 else ‘\r%s%% : %s‘%(i,‘*‘*char_num) print(per_str,end=‘‘, file=sys.stdout, flush=True) 复制代码
callable——查看参数是否能被调用
def func():pass print(callable(func)) #参数是函数名,可调用,返回True print(callable(123)) #参数是数字,不可调用,返回False
dir——可用于查看一个数据类型的内置方法,类似于help,是一种帮助
附:可供参考的有关所有内置函数的文档https://docs.python.org/3/library/functions.html#object
what's the python之内置函数
原文地址:https://www.cnblogs.com/zhuminghui/p/8206298.html