python有哪些高级内置函数

1、enumerate返回针对序列类型的可迭代对象的枚举对象。

2、eval取出字符串中的内容。

将str中有效的表达式返回计算结果。

3、exec运行编译后的字符串。

4、filter过滤器筛选出想要的对象。

实例

list1 = [1,'ok',3,'kkk']
s = enumerate(list1)
print(s)#<enumerate object at 0x000002D2CC666DB8>生成一个枚举对象
for i in s:
    print(i)
#(0, 1)
# (1, 'ok')
# (2, 3)
# (3, 'kkk')
data = list(s)
print(data)#[(0, 1), (1, 'ok'), (2, 3), (3, 'kkk')]
 
a = '1+2+3'
print(a)#1+2+3
print(eval(a))#6
b = 'we s s'
# print(eval(b))#报错,必须是有效表达式
 
c = 12
d = 24
e = 'sum = c+d'
print(e)#sum = c+d
exec(e)
print(sum)#36
 
def func(x):
    return x>5
list2= [i for i in range(10)]
print(func(6))#True
f_list = filter(func,list2)
print(f_list)#<filter object at 0x000001F8E1DFACC8>返回一个过滤器对象
list3 = list(f_list)
print(list3)#[6, 7, 8, 9]
 
def func1(y):
    if y>5:
        return y*2
list4= [i for i in range(10)]
f_list = filter(func1,list4)
list5 = list(f_list)
print(list5)#[6, 7, 8, 9]
#只进行筛选,筛选出来是什么,返回的就是是什么,不会改变值
 
def func2(k):
    if k<5:
        return k#返回的是一个bool值,不会返回0
list6= [i for i in range(10)]
f_list = filter(func2,list6)
list7 = list(f_list)
print(list7)#[1, 2, 3, 4]
 
def demo(x):
    return x*10
 
list8 = [i for i in range(7)]
s = map(demo,list8)#数据必须是可迭代数据
 
print(s)#<map object at 0x0000029B113BA288>生成的是一个map对象,要查看里面的内容要转类型
 
list9 = list(s)
print(list9)#[0, 10, 20, 30, 40, 50, 60]
 
 
 
list10 = ['ok','yes','no']
list11 = ['可以','是的','不']
 
a = zip(list10,list11)
print(a)#<zip object at 0x000001A4EE89A688>生成一个对象
print(dict(a))#{'ok': '可以', 'yes': '是的', 'no': '不'}也可以直接进行操作
#数据被操作一次后就不能再进行操作
print(list(a))#[]
# list12 = list(a)
# print(list12)#[('ok', '可以'), ('yes', '是的'), ('no', '不')]
# print(dict(list12))#{'ok': '可以', 'yes': '是的', 'no': '不'}
#可以直接转换成字典,有对象就配对,没有就不配

你可能感兴趣的