Python-内置函数

一、常用内置函数之一 

help()     #查看帮助文档
dir()      #返回list,查看当前文件或对象的所有方法和变量名
vars()     #返回dict,查看当前文件的所有变量名和对应的值,dir()的返回值是vars的key
import     #调用模块,在一个文件中多次调用同一个模块,该模块只会执行一次
reload()   #在import之后,可强制再执行一次模块
type()     #返回变量的数据类型
map()      #map(function, iter),返回function(iter[i]),结果是一个map类型,可用list()转化
filter()   #只返回函数值为True的参数
reduce()   #累加
zip()      #相当于求一个矩阵的逆,将列变成行
eval()     #将字符串当成有效的表达式来求值并返回计算结果,或者将字符串转化为相应的对象
enumerate()#对于可迭代对象,返回每个元素的下标和对应元素

在一个文件中多次导入同一个模块,该模块只会执行一次

from imp import reload
import file  #导入file模块
import file  #前面两个import只会执行一次file模块
reload(file) #再次执行file模块

map(function, iter),结果是map对象,可用list转化

1、当function的参数只有一个时,返回function( iter[i] )

2、当function的参数大于一个时,需要传入与参数相同个数的迭代器,返回function(iter1[i], iter2[i], ...)

def func1(x):
    return x**2

def func2(x, y, z):
    return x+y+z

iter1 = [1,2,3] 
iter2 = (10,20,30)
iter3 = iter([100,200,300])

a = map(func1, iter1)
b = map(func2, iter1, iter2, iter3) #可迭代对象都可以作为入参 

打印a、b的类型和元素:

>>> type(a)
<class 'map'>
>>> type(b)
<class 'map'>
>>> list(a)
[1, 4, 9]
>>> list(b)
[111, 222, 333]

filter(function, iter),结果是filter对象,可用list转化

>>> a = filter(lambda x:True if x>0 else False, [1,2,-1,0])
>>> print(list(a))
[1, 2]

reduce(function, iter), 每次取两个值作为入参,再将函数返回值作为下一次循环的其中一个入参

>>> from functools import reduce
>>> b = reduce(lambda x, y: x+y, (1, 2, 3, 4))
>>> c = reduce(lambda x, y: x*y, [1, 2, 3, 4, 5])
>>> print(b,c)
10 120

zip(iter1,iter2, ...),结果是zip对象,可用list转化

>>> a = zip([1, 2, 3], [4, 5, 6], [7, 8, 9])
>>> print(list(a))
[(1, 4, 7), (2, 5, 8), (3, 6, 9)]

eval(str),将字符串当成有效的表达式来求值并返回计算结果,或者将字符串转化为相应的对象

>>> str1 = '10*2'
>>> print(eval(str1))
20

>>> str2 = '[1,2,3]'
>>> a = eval(str2); print(a,type(a))
[1, 2, 3] <class 'list'>

>>> str3 ="{1: 'A', 2: 'B'}"
>>> b = eval(str3); print(b, type(b))
{1: 'A', 2: 'B'} <class 'dict'>

enumerate(iter, index =0),遍历可迭代对象,返回该对象的每一个元素下标及对应元素。 下标默认从0开始

>>> dict1 = {}
>>> for k,v in enumerate(['a', 'b', 'c', 'd'], 2):
        dict1[k]=v
>>> print(dict1) {2: 'a', 3: 'b', 4: 'c', 5: 'd'}

二、常用内置函数之二

all()   #入参为可迭代类型(如list,tuple,dict等),元素全部为真时,返回True;否则返回False
any()   #元素全部为假时,返回False;否则返回True
abs() #求绝对值 pow() #开N次方 sum() #求和 divmod()#参数分别为被除数、除数;返回一个元组,保存商和余数 max() #求最大值 min() #求最小值
len() #对容器类型的参数,len()返回元素个数;对字符串,返回占用的字节长度 chr() #ascii码转化为字符 ord() #字符转化为ascii码 hex() #16进制 bin() #2进制 oct() #8进制
原文地址:https://www.cnblogs.com/jessicaxu/p/7744563.html