码迷,mamicode.com
首页 > 编程语言 > 详细

Python-内置函数

时间:2016-05-31 01:02:36      阅读:365      评论:0      收藏:0      [点我收藏+]

标签:

一、compile()

将字符串编译成Python代码。

编译的模式,single,eval,exec

s = "print(123)"
r = compile(s,"<string>","exec")   #把字符串s 编译成python代码,然后让exec()执行。
exec(r)

 

二、exec()

执行python代码,没有返回值,即没有结果。也就是返回None

可以接收代码或者是字符串都可以执行。即如果接收到的是python代码,那么就会直接执行。如果接收到的是字符串,那么exec()会把字符串编译成python代码,然后再执行该代码。

‘‘‘例1:接收字符串,先把字符串转换为python代码,然后再执行该代码‘‘‘
s = "print(123)"
exec(s)
输出结果:执行了print(123)
123
‘‘‘例2:接收到的是代码,直接执行该代码‘‘‘
‘‘‘首先是compile()把s字符串转换为代码,然后让exec()来执行‘‘‘
s = "print(123)"
r = compile(s,"<string>","exec")
exec(r)
输出结果:
123
‘‘‘例3:没有返回值,即没有结果。只能返回None‘‘‘
s = "print(123)"
r = compile(s,"<string>","exec")
k = exec(r)


输出结果:
None

三、eval()

执行代码,有返回值,把字符串转换为表达式,进行计算,并返回结果

‘‘‘例1:将字符串s转换为代码,并执行s的表达式‘‘‘
s = "8*8"
ret = eval(s)
print(ret)
输出结果:
64

 

注意:exec() 无返回结果

        eval() 有返回值

 

四、dir()

快速查看对象提供了哪些功能

print(dir(list))
输出结果:
技术分享

 

五、divmod(A,B)

博客分页需求:

假如有99个页面,每页显示10个页面,总共需要多少页

divmod()生成的是元组类型的数据。

 

‘‘‘例1:获取divmod()的值‘‘‘
r = divmod(98,10) #生成的是元组类型
print(r,type(r))
print(r[0])
print(r[1])
输出结果:
(9, 8) <class ‘tuple‘>
9
8

‘‘‘例2:获取n1,n2的值‘‘‘ n1,n2 = divmod(98,10) print(n1) print(n2)
输出结果:
9
8

 

六、filter()

对于序列中的元素进行筛选,最终获取符合条件的序列!

技术分享

 

使用方法:

filter(函数,可迭代的对象)

filter,循环第二个参数,让每个循环元素执行函数,如果函数返回值True,表示元素合法。

需求:获取一个列表中大于22的元素。

‘‘‘例1:获取列表大于22的元素,平时做法‘‘‘
def f1(args):
    result_list = []
    for item in args:
        if item > 22:
            result_list.append(item)
    return result_list

list1  = [11,22,33,44,55]
r = f1(list1)
print(r)

输出结果:
[33, 44, 55]

‘‘‘例2:使用filter函数实现‘‘‘
def f2(a):
if a > 22:
return True
li = [11,22,33,44,55]
ret = filter(f2,li)
print(list(ret))
输出结果:
[33, 44, 55]

‘‘‘例3:使用filter函数与lambda‘‘‘
list1 = [11,22,33,44,55]
ret = filter(lambda a:a>22,list1)
print(list(ret))



输出结果:
[33, 44, 55]

通过上面的3个例子,发现例3 最简单。

七,map()

遍历序列,对序列中每个元素进行操作,最终获取新的序列。

map  # 将函数返回元素添加到结果中
技术分享


解释:在python中,最基本的数据结构是序列(sequence)。序列中的每个元素被分配一个序号--即元素的位置,也称为索引。第一个索引是0,第二个则是1,以此类推。序列中的最后一个元素标记为-1,倒数第二个元素为-2,以此类推。
Python包含6种内建的序列,包括列表、元组、字符串、Unicode 字符串,buffer对象和xrange对象。


 

Python-内置函数

标签:

原文地址:http://www.cnblogs.com/pangguoping/p/5544437.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!