python面向对象的使用案例


这篇文章给大家分享的是有关python面向对象的使用案例的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。面向对象1. 创建支持With语句的对象我们都知道如何使用打开或关闭语句,例如打开文件或获取锁,但是如何实现自己的方法呢?可以使用__enter__和__exit__方法实现:这是在Python中实现上下文管理的最常见方法,但是有一种更简单的方法:上面的代码段使用contextmanager管理器装饰器实现了内容管理协议。进入with块时,执行标记函数的第一部分(在yield之前),然后执行该块,最后执行其余的标记函数。2. 重载运算符号的技巧考虑到有很多比较运算符:__lt__ , __le__ , __gt__,对于一个类实现所有比较运算符可能会很烦人。这时候可以使用functools.total_ordering:该代码使用total_ordering装饰器用于简化为类实现实例排序的过程。只需要定义__lt__和__eq__。3. 在一个类中定义多个构造函数函数重载是编程语言中非常常见的功能。即使Python不能重载正常的函数,我们也可以使用类方法重载构造函数:# 14/9/2019可以不使用构造函数将所有逻辑都放入__init__并使用*args,**kwargs和一堆if语句来解决,但是比较丑陋,没有可读性和可维护性。4. 获取对象信息Python提供了几个函免费云主机域名数以便我们更好的获取对象的信息,这些函数包括:type、isinstance和dir。其中type():用于判断对象类型:对类对象type()返回的是对应class类型。下面是判断两个变量的type类型是否相同:isinstance():可以显示对象是否是某种类型Husty是Husty、Dog、Animal类型的对象,却不能说Dog是Husty的对象。dir():用于获取一个对象的所有方法和属性。返回值是一个包含字符串的list:其中,类似__xx__的属性和方法都是有特殊用途的。如果调用len()函数视图获取一个对象的长度,其实在len()函数内部会自动去调用该对象的__len__()方法。5. Iterator和切片如果直接对Iterator切片,则会得到TypeError,指出生成器对象不可下标反问,但是有一个技巧:使用itertools.islice,可以创建一个islice对象,该对象是生成所需项目的迭代器。但是,这会消耗所有生成器项,直到分片开始为止,而且还会消耗islice对象中的所有项。6. 跳过一些行有时,必须使用已知以可变数量的不需要的行(例如注释)。也可以使用itertools:该代码段仅在初始注释部分之后产生行。如果只想在迭代器的开头丢弃并且不知道其中有多少个项目,则此方法很有用。7. 命名切片使用大量硬编码的索引值会很容易引起代码繁琐和破坏代码可读性。常用的技巧是对索引值使用常量,除此之外我们可以使用命名切片:示例中,可以看到可以索引,方法是先使用slice函数命名它们,然后在切出一部分字符串时使用它们。还可以使用切片对象的属性.start,.stop和.step获得更多信息。感谢各位的阅读!关于“python面向对象的使用案例”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

相关推荐: jQuery选择器怎么用

这篇文章主要介绍jQuery选择器怎么用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!jQuery选择器类似于CSS选择器,用来选取网页中的元素。例如:说明:获取并设置网页中所有“h4”为选择器语法,必须放在$()中。$(“h4”)返回…

免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。

(0)
打赏 微信扫一扫 微信扫一扫
上一篇 01/24 18:29
下一篇 01/24 18:29

相关推荐