设为首页 收藏本站
查看: 289|回复: 0

[经验分享] PYTHON--常用函数(三)

[复制链接]

尚未签到

发表于 2017-5-1 06:07:23 | 显示全部楼层 |阅读模式
eval( expression[, globals[, locals]])
该参数是一个字符串和可选的 globals和 locals。globals必须是一个字典。locals可以是任何映射对象.

>>> x = 1
>>> print eval('x+1')
2
>>> g = {'x':'a','y':'b','z':'c'}
>>> eval('x+y+z',g)
'abc'

exec(str[,globals[,locals]]):exec语句参数的含义大体与eval相同。它可以接收一组语句的字符串。执行语句。
>>> exec("print 2")
2
>>> exec("3*4")
>>> exec("for i in range(0,5): print i,")
0 1 2 3 4

compile( string, filename, kind[, flags[, dont_inherit]])
编译string为一个代码对象。代码对象能够通过exec语句执行或者通过调用eval()计算。个警告:必须以'\n'作为行结束符,同时,输入必须至少以一个'\n'作为结束。不能以'\r\n'作为行结束。
>>> s="for i in range(0,10): print i,"
>>> c = compile(s,"",'exec')
>>> exec(c)
0 1 2 3 4 5 6 7 8 9

>>> s2="3*7+6"
>>> c2=compile(s2,'','eval')
>>> eval(c2)
27

frozenset( [iterable])
类似于set()。返回一个 frozenset对象,其元素来自于 Iterable。 Frozensets组没有更新的方法,但可以作为字典键使用。一个 frozenset的元素必须是不可改变。所以相对于set,没有add,delete,pop,update等方法。内部 sets也应是 frozenset对象。

getattr( object, name[, default])
返回 object名为 name属性的值。名称必须是一个字符串。如果该字符串是对象的其中属性名字,结果是该属性的值。例如,getattr(x, 'foobar')相当于 x.foobar。如果指定的属性不存在,则返回默认提供的,否则抛出 AttributeError。

setattr( object, name,value])
参数是一个对象,一个字符串和一个任意的值。该字符串可以命名一个现有的属性,或一个新的属性。功能是分配属性的值。例如,setattr的(的x,'foobar的',123)是相当于x.foobar= 123。

hasattr( object, name)
该参数是一个对象和一个字符串。如果字符串是对象的其中一个属性,结果为 True,如果没有返回 False。(这是通过调用的 getattr(对象名称),看是否引发异常与否。)

delattr( object, name)
参数是一个对象和一个 string.string必须是对象的一个属性。函数删除 object这个名为 string的属性。例如,delattr(x, 'foobar')等价于 del x.foobar

hash( object)
返回对象(如果有的话)的哈希值。哈希值是整数。它们被用来在词典查找时,作为一个快速比较字典 keys键。具有相同的哈希值,数值相等。

id( object)
返回对象的``identity''。这是一个整数(或长整型),这是保证是唯一的,与对象的生命周期一样长。两个非重叠的生命周期的对象可能有相同的 ID值。

callable( object)
如果object参数可以调用就返回True,否则返回False。如果返回True,它仍然可能调用失败,但是如果返回False,就永远不可能调用成功。注类是可调用的(调用一个类返回一个实例)类的实例如果有一个__call__()方法就是可调用的。

issubclass(sub,tuple)
判断一个类是否是某个类的子类,tuple是父类的集合,满足其中任何一个即返回True


isinstance(object,class-or-type-or-tuple)
isinstance()测试对象类型,返回布尔型

>>> a='isinstance test'
>>> b=1234
>>> isinstance(a,str) True
>>> isinstance(a,int) False
>>> isinstance(b,str) False
>>> isinstance(b,int) True

partial(function,args)
偏函数,省略默认参数
>>> from functools import partial
>>> baseTwo = partial(int,base=2)
>>> baseTwo('10010')
18

reload(module)
重新导入一个已经导入的模块。首先,模块必须被全部导入,而且必须成功;另外,参数必须是模块本身而不是字符串。

模块中的代码在导入时被执行,但只执行一次,以后执行import时,也不会执行这些代码,只是绑定模块名称,而reload()函数可以使之执行。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-371366-1-1.html 上篇帖子: python日志模块(logging) 下篇帖子: python的log使用详解
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表