随笔分类 -  洗礼灵魂,修炼python

零基础python学习随笔,个人原创见解
摘要:与爬虫相关的常用模块列表。 原文出处:传送门链接 网络 阅读全文
posted @ 2017-11-01 17:10 Eeyhan 阅读(251) 评论(0) 推荐(0) 编辑
摘要:变色龙原理 变色龙这种动物想必大家都了解,它们会根据周遭环境的局势来改变自己的颜色,伪装自己。 那么爬虫有这种技能吗?当然是有的,先不着急说这个问题。 从上一篇开始,你有没有想过,站在网站管理的角度,如果在同一时间段,大家全部利用爬虫程序对自己的网站进行爬取操作,那么这网站服务器能不能承受这种负荷?肯定不能啊,如果严重超负荷则会时服务器宕机(死机)的,对于一些商业型的网站,宕机一秒钟的损失都是不得了的,这不是一个管理员能承担的,对吧?那管理员会网站服务器做什么来优化呢?我想到的是,写一个脚本,当检测到一个IP访问的速度过快,报文头部并不是浏览器的话,那么就拒绝服务,或者屏蔽IP等,这样就可以减少服务器的负担并让服务器正常进行。 阅读全文
posted @ 2017-11-01 16:59 Eeyhan 阅读(317) 评论(0) 推荐(0) 编辑
摘要:爬虫 1.什么是爬虫 爬虫就是昆虫一类的其中一个爬行物种,擅长爬行。 哈哈,开玩笑,在编程里,爬虫其实全名叫网络爬虫,网络爬虫,又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者。是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。另外一些不常使用的名字还有蚂蚁、自动索 阅读全文
posted @ 2017-11-01 14:55 Eeyhan 阅读(292) 评论(0) 推荐(0) 编辑
摘要:包(Package) 这个其实前面也说过的,不过同模块一样,没有具体的解析 1.什么是包 在创建许许多多模块后,我们可能希望将某些功能相近的文件组织在同一文件夹下,那么此文件夹(目录)即为包,文件夹(目录)名即为包名,但包有一个特征与其他普通文件夹区分,包目录下必须有一个名为__init__.py的文件,__init__.py的内容可以为空,主要是为了避免python将文件夹名当作其他文件夹一样的处理为普通的字符串。一般用来进行包的某些初始化工作或者设置__all__值,__all__是在from package-name import *这语句使用的,表示导入全部定义过的模块。 阅读全文
posted @ 2017-10-29 22:10 Eeyhan 阅读(210) 评论(0) 推荐(0) 编辑
摘要:模块 其实前面都说过的,不过还是系统的再说一次,相信学到这,大部分都被搞忘了吧,所以再提一下,也为后面的博文做铺垫 1.什么是模块 在程序的开发过程中,随着程序代码越写越多,在一个文件里代码就会越来越长,越来越不容易维护,不断的滚雪球式的增长。为了维护好代码,我们把很多类和函数分组,分别放到不同的python可读的py文件里,这样就解决了问题,让主程序文件的代码减少,很多编程语言都采用这种组织代码的方式,在html标签里也一样,把样式写入css里,要用的使用再链接css样式表就行。而这里的一个.py文件就称之为一个模块(Module) 模块也有另一个名称,库,库又分标准库和第三方库,而内置的库(在安装python时就已经带有的库) 阅读全文
posted @ 2017-10-29 21:29 Eeyhan 阅读(193) 评论(0) 推荐(0) 编辑
摘要:定义类的方法,相信你会说,不就是在class语句下使用def () 就是定义类的方法了嘛,是的,这是定义的方法的一种,而且是最普通的方式 首先,我们已经知道有两种方式: 1.普通方法: 1)与类无关的方法 阅读全文
posted @ 2017-10-29 20:30 Eeyhan 阅读(178) 评论(0) 推荐(0) 编辑
摘要:在前面装饰器一章中,提过一句话,装饰器也可以用于类中,确实可以的,并且python的类也内置了一部分装饰器。并且在前两章的hasattr等四个内置方法中,也说过其用法很类似装饰器,到底在类中可以用装饰器不呢?还有具体有哪些内置的装饰器呢?还记得property吗?之前有个例子里,在类里定义好方法后,再用property就可以通过属性设置属性 先看一个普通的类 阅读全文
posted @ 2017-10-29 16:18 Eeyhan 阅读(189) 评论(0) 推荐(0) 编辑
摘要:学到这里了,相信你应该对__init__非常熟悉了,就是构造器呗,当类被实例化时初始化的作用 但__init__其实不是实例化一个类的时候第一个自动调用的方法。当实例化一个类时,最先被调用的方法 其实是 __new__ 方法 __new__ __new__方法接受的参数虽然也是和__init__一样,但__init__是在类实例创建之后调用,而 __new__方法正是创建这个类实例的方法。依照Python官方文档的说法,__new__方法主要是当你继承一些不可变的class时(比如int, str, tuple), 提供给你一个自定义这些类的实例化过程的途径。还有就是实现自定义的metaclass。(前几篇博文提到过的元类) 阅读全文
posted @ 2017-10-29 13:08 Eeyhan 阅读(203) 评论(1) 推荐(0) 编辑
摘要:不急着进入正题。先动手完成一个小程序: 设计一套简单的服务开启关闭程序,每次开启或关闭都得打印服务当前的状态: class Server(object): 阅读全文
posted @ 2017-10-28 16:39 Eeyhan 阅读(282) 评论(0) 推荐(0) 编辑
摘要:经典类 1.什么是经典类 就是在使用class关键词时,括号内不添加object类的就叫经典类,前面的博文里是绝对解析过的,所以你应该知道,经典类现在已经仅存在于python2了,因为python3不管你给没给object都会自动继承object类,其采用MRO算法深度优先搜索。Python 2.x中默认都是经典类,只有显式继承了object才是新式类 阅读全文
posted @ 2017-10-27 15:52 Eeyhan 阅读(176) 评论(0) 推荐(0) 编辑
摘要:type函数的隐藏属性 相信大家都知道内置函数type是用来查看对象的数据类型的。例: 阅读全文
posted @ 2017-10-26 23:44 Eeyhan 阅读(211) 评论(1) 推荐(0) 编辑
摘要:声明:本篇文章仅仅以游戏《绝地求生》作为一个参考话题来介绍面向对象编程,只是作为学术引用,其制作的非常简易的程序也不会作为商业用途,与蓝洞公司无关。 阅读全文
posted @ 2017-10-25 21:01 Eeyhan 阅读(762) 评论(0) 推荐(1) 编辑
摘要:1.什么是定制魔法方法 首先定制是什么意思呢?其实就是自定义了,根据我们想要的要求来自定义。而在python中,其实那些所谓的内置函数,内置方法,内置属性之类的其实也是自定义出来的,不过是龟数开发python时已经给出了,已经自带了基本能想到的功能都带有了,换句话就是已经给我们事先定义好了,要用的话,直接拿来就用就是,不需要我们自己再去定义。定制魔法方法就是自定义魔法方法了。但是必须遵循定制魔法方法的一些规则 阅读全文
posted @ 2017-10-21 21:13 Eeyhan 阅读(209) 评论(0) 推荐(0) 编辑
摘要:首先,本人也是刚接触python不久,没有老鸟的经验和技能,大佬勿喷,以下所有皆是本人对python的理解 python,是一种解释型(高级)的,面向对象的,带有动态语义的高级程序设计的开源语言。1989年,Guido von Rossum(荷兰人)人称龟叔,他在圣诞节时因为无聊而开发出来的,详细的python发展史介绍可以百度或Google,已经很多了,不再赘述。 python是从2015年在国内火起来,之前为什么不火,因为国内情况一直稍落于外国强国,并且在刚开始的python其实很多缺点,因为是门高级语言,每次运行代码都需要解释器解释或者叫翻译一次才可以执行代码,速度比C等开发语言慢很多,直到后面出现两大转折点: 阅读全文
posted @ 2017-10-18 20:05 Eeyhan 阅读(182) 评论(0) 推荐(0) 编辑
摘要:__new__(cls[, ...]) __new__ 是在一个对象实例化的时候所调用的第一个方法 它的第一个参数是这个类,其他的参数是用来直接传递给 __init__ 方法 __new__ 决定是否要使用该 __init__ 方法,因为 __new__ 可以调用其他类的构造方法或者直接返回别的实例对象来作为本类的实例,如果 __new__ 没有返回实例对象,则 __init__ 不会被调用 __new__ 主要是用于继承一个不可变的类型比如一个 tuple 或者 string 阅读全文
posted @ 2017-10-18 14:44 Eeyhan 阅读(178) 评论(0) 推荐(0) 编辑
摘要:上一篇文章了解了魔法方法,相信你已经归魔法方法至少有个概念了,那么今天就进一步的认识魔法方法。说这个之前,大脑里先回忆一下算术操作符。 什么是算术操作符?忘记没有?忘记了的自己倒回去看我前面的博文或者自己网上找吧。 +,-,*,/,**,//,%(用法忘记了的回去看)是不是一般就这些,那么你有没有想过,为什么使用算术符里的某一个符号时程序就会乖乖听话的怎么操作?难道它里面嵌入了一个计算机器功能?难道它一被龟数开发出来就可以运算?都不是很准确,而是因为—魔法方法 不饶弯子了,看图: 阅读全文
posted @ 2017-10-18 13:49 Eeyhan 阅读(189) 评论(0) 推荐(1) 编辑
摘要:也许上一篇博文提到的property内置函数的用法你还觉得记忆犹新,那么有没有更多的类似的方法呢?有的,就是本篇文章要说的魔法方法 魔法方法 1.什么是魔法方法 (其实前面已经提到多次,每次我都是说暂且不谈,后面会提到,在这里终于填坑了) 总是被双下划线包围的方法,比如__init__ 魔法方法是面向对象的python的一切。有句话叫“如果你不清楚魔法方法,那么你还没能意识到面向对象的python的强大” 所以在python中,魔法方法是很重要的 阅读全文
posted @ 2017-10-17 20:34 Eeyhan 阅读(218) 评论(0) 推荐(0) 编辑
摘要:issubclass(cls, class_or_tuple, /) 1.基本属性: 阅读全文
posted @ 2017-10-17 18:27 Eeyhan 阅读(200) 评论(5) 推荐(0) 编辑
只有注册用户登录后才能阅读该文。
posted @ 2017-10-17 15:15 Eeyhan 阅读(31) 评论(2) 推荐(0) 编辑
摘要:继承 1.什么是继承: 字面意是子女继承父母的家产或者特性等。而在编程里继承是指子类继承父类(基类,超类,都一个意思)的属性和方法 2.怎么继承: 说个简单的例子,在前面里说到了定义类时使用object参数后就带有了object的属性和方法,这种自然带有的属性和方法就是继承。 所以,继承的方法:在事先有父类的前提下,定义子类时,把父类类对象以参数形式传入就行 阅读全文
posted @ 2017-10-16 18:20 Eeyhan 阅读(200) 评论(2) 推荐(0) 编辑