这几天和几个朋友以各种途径讨论过OOP的相关问题,他们是:令狐虫、Frank、晋剑、小冯大家对OOP有不同看法,所谓工程派和学院派看法不一致。从应用的角度看,工程派的观点是值得推荐的,那就是:不用太在意内部是怎么工作的,只要能够解决眼下的问题即可。但是,对于学习者而言,如果仅仅停留在工程派的层面(特别提醒,上述几位朋友都是工程派的大侠,他们可不是简单地能够使用,其实是更高层次的“无招胜有招”),学习者可能感觉有点不透彻。所以,学习者,特别是初学者,要知道一
系统 2019-09-27 17:55:20 1864
枚举是常用的功能,看看Python的枚举.fromenumimportEnumMonth=Enum('Month',('Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec'))枚举的定义首先,定义枚举要导入enum模块。枚举定义用class关键字,继承Enum类。注意:定义枚举时,成员名称不允许重复默认情况下,不同的成员值允许相同。但是两个相同值的成员,第二个成员的名称
系统 2019-09-27 17:55:15 1864
概述Python3对函数参数的排序规则更加通用化了,即Python3keyword-only参数,该参数即为必须只按照关键字传递而不会有一个位置参数来填充的参数。该规则在处理人一多个参数是很有用的。keyword-onlykword_only(1,2,3,c=4)print('-'*20)kword_only(a=1,c=3)示例结果:1(2,3)4--------------------1()3在*args之后的参数都需要在调用中使用关键字的方式传递,否
系统 2019-09-27 17:54:57 1864
前面说到了urllib2的简单入门,下面整理了一部分urllib2的使用细节。1.Proxy的设置urllib2默认会使用环境变量http_proxy来设置HTTPProxy。如果想在程序中明确控制Proxy而不受环境变量的影响,可以使用代理。新建test14来实现一个简单的代理Demo:复制代码代码如下:importurllib2enable_proxy=Trueproxy_handler=urllib2.ProxyHandler({"http":'ht
系统 2019-09-27 17:54:48 1864
SQLite是一款轻型的数据库,是遵守ACID的关系型数据库管理系统。不像常见的客户-服务器范例,SQLite引擎不是个程序与之通信的独立进程,而是连接到程序中成为它的一个主要部分。所以主要的通信协议是在编程语言内的直接API调用。Python标准库包含一个SQLite包装器:使用模块sqlite3实现的PySQLite。下面是一个操作SQLite数据库的例子:创建表、插入记录、查询记录。importsqlite3#创建直接到数据库文件的连接,如果文件不存
系统 2019-09-27 17:54:40 1864
期末复习比较忙过段时间来专门写scrapy框架使用,今天介绍如何用python生成词云,虽然网上有很多词云生成工具,不过自己用python来写是不是更有成就感。今天要生成的是励志歌曲的词云,百度文库里面找了20来首,如《倔强》,海阔天空是,什么的大家熟悉的。所要用到的python库有jieba(一个中文分词库)、wordcould、matplotlib、PIL、numpy。首先我们要做的是读取歌词。我将歌词存在了文件目录下励志歌曲文本中。现在来读取他#en
系统 2019-09-27 17:54:39 1864
综述本系列文档用于对Python爬虫技术的学习进行记录总结。Python版本是3.7.4urllib库介绍它是Python内置的HTTP请求库,也就是说我们不需要额外安装即可使用,它包含四个模块(主要对前三个模块进行学习):request:它是最基本的HTTP请求模块,我们可以用它来模拟发送一请求,就像在浏览器里输入网址然后敲击回车一样,只需要给库方法传入URL还有额外的参数,就可以模拟实现这个过程了。error:异常处理模块,如果出现请求错误,我们可以捕
系统 2019-09-27 17:54:27 1864
一些讨论Python中使用配置文件的最佳实践Python中使用配置文件的最好方法Python符号常量多种配置文件方案对比我的建议1.排除yamlyaml不是一个好主意,因为需要给项目引入额外的依赖。首先排除它,除非是你的个人项目,或者你的项目已经引入了这个package。2.使用setting.py如果你只是需要配置一些全局的符号常量(symbolicconstants),参考Django的做法,使用setting.py,参见:https://github
系统 2019-09-27 17:54:23 1864
关卡二:1.练习题1面向对象的理解要求:在类内定义一个可以重新设置私有属性name的函数条件为字符串长度小于10,才可以修改.答:defSetName(self,newname):iflen(newname)<10:self.__name=newnameelse:print("error:名字太长!")在创建一个类之后需要调用什么函数?答:应调用__del__()函数.del()方法是手动调用还是类默认调用?答:手动调用如何访问对象的属性?答:使用(.)来
系统 2019-09-27 17:54:18 1864
安装方法pipinstallScrapy如果顺利的话不用管直接一路下来就OK验证是否安装成功安装成功不顺利的情况1)lxml安装不成功使用whl进行安装,不过需要先安装whlpipinstallwheel安装完成后下载lxml的whl文件网址:http://www.lfd.uci.edu/~gohlke/pythonlibs/whl版本挑选进入cmd――>importpip――>printpip.pep425tags.get_supported(),按照截
系统 2019-09-27 17:54:03 1864