搜索到与相关的文章
Python

Python:为什么必须在方法定义和调用中明确使用'self'?

面向对象的语言有对象。对象是状态和行为的组合。对象需要访问自己的状态。这样做基本上有两个主要选择。要么你明确地说你何时访问一个对象的状态(通过self,this或者其他类似的东西),或者语言会为你找出。让我先讨论后一种情况。存在名称冲突的问题。例如,如果对象的数据成员与方法参数的名称匹配,或者如果声明与数据成员的名称匹配的局部变量,会发生什么。您要么不允许这种情况,要么具有某种解决机制。Smalltalk是一个像这样工作的语言的例子,但我不记得语言是如何处

系统 2019-09-27 17:55:44 2228

Python

浅谈Python生成器generator之next和send的运行流程(详解)

对于普通的生成器,第一个next调用,相当于启动生成器,会从生成器函数的第一行代码开始执行,直到第一次执行完yield语句(第4行)后,跳出生成器函数。然后第二个next调用,进入生成器函数后,从yield语句的下一句语句(第5行)开始执行,然后重新运行到yield语句,执行后,跳出生成器函数,后面再次调用next,依次类推。下面是一个列子:defconsumer():r='here'foriinxrange(3):yieldrr='200OK'+str(

系统 2019-09-27 17:55:41 2228

Python

Python 2.7.x 和 3.x 版本的重要区别小结

许多Python初学者都会问:我应该学习哪个版本的Python。对于这个问题,我的回答通常是“先选择一个最适合你的Python教程,教程中使用哪个版本的Python,你就用那个版本。等学得差不多了,再来研究不同版本之间的差别”。但如果想要用Python开发一个新项目,那么该如何选择Python版本呢?我可以负责任的说,大部分Python库都同时支持Python2.7.x和3.x版本的,所以不论选择哪个版本都是可以的。但为了在使用Python时避开某些版本中

系统 2019-09-27 17:53:47 2228

Python

python爬虫第6关csv&excel

前面讲到json是特殊的字符串。其实,csv也是一种字符串文件的格式,它组织数据的语法就是在字符串之间加分隔符——行与行之间是加换行符,同列之间是加逗号分隔。它可以用任意的文本编辑器打开(如记事本),也可以用Excel打开,还可以通过Excel把文件另存为csv格式(因为Excel支持csv格式文件)。将我们刚刚写入的csv文件下载到本地电脑,再用记事本打开,你会看到:用Excel打开,则是这样的:发现了吗?csv文件里的逗号可以充当分隔同列字符串的作用。

系统 2019-09-27 17:53:37 2228

Python

python GUI实例学习

在学习本篇之前,如果你对Python下进行GUI编程基础内容还有不明白,推荐一篇相关文章:简单介绍利用TK在Python下进行GUI编程的教程写一个简单的界面很容易,即使是什么都不了解的情况下,这个文本转载了最简单的界面编写,下个文本介绍了TK的简单但具体的应用在python中创建一个窗口,然后显示出来。fromTkinterimport*root=Tk()root.mainloop()就3行就能够把主窗口显示出来了。root是一个变量名称,其代表了这个主

系统 2019-09-27 17:53:14 2228

Python

python中字符串比较使用is、==和cmp()总结

经常写shell脚本知道,字符串判断可以用=,!=数字的判断是-eq,-ne等,但是Python确不是这样子的。所以作为慢慢要转换到用Python写脚本,这些基本的东西必须要掌握到骨子里!在Python中比较字符串最好是使用简单逻辑操作符。例如,确定一个字符串是否和另外一个字符串匹配。正确的,你可以使用isequal或==操作符。你也可以使用例如>=或<来确定几个字符串的排列顺序。从官方文档上看Theoperators``is``and``isnot``t

系统 2019-09-27 17:51:52 2228

Python

VSCode下好用的Python插件及配置

MSPython插件。这是微软官方的Python插件,已经自带很多功能。下面是插件功能描述,其中部分内容我做了翻译。a)Linting(Prospector,Pylint,pycodestyle,Flake8,pylama,pydocstyle,mypywithconfigfilesandplugins)静态代码扫描(可以理解为代码语法和格式错误提示,支持多种linter)b)Intellisense(autocompletionwithsupportfo

系统 2019-09-27 17:51:41 2228

Python

详解python中Numpy的属性与创建矩阵

ndarray.ndim:维度ndarray.shape:形状ndarray.size:元素个数ndarray.dtype:元素数据类型ndarray.itemsize:字节大小创建数组:a=np.array([2,23,4])#list1dprint(a)#[2234]指定数据类型:a=np.array([2,23,4],dtype=np.int)print(a.dtype)#int64dtype可以指定的类型有int32,float,float32,后

系统 2019-09-27 17:50:47 2228

Python

python抽取pdf中内容

这两天一直在windows上做用python(版本是3.6)抽取pdf中内容的东西,主要就是从pdf中提取出里面的字体和表格内容。尝试了好些个库,现在算是找到比较符合我需求(比较好用)的pdf解析的了。在这个过程中,用了以下几个库:PDFminerPDFminer算是一个还算不错的吧,安装直接用pip安装就行。如下:pipinstallpdfminer3k它这个对pdf中内容做了好些个对象,用这些对象来存储不同的信息,比如表格有LTFigure对象存储、文

系统 2019-09-27 17:50:26 2228

Python

python os.fork() 循环输出方法

先看下面这段代码:importosdefmain():foriinrange(0,2):os.fork()print'Hello'if__name__=='__main__':main()猜测一下,会输出几行Hello。答案是:HelloHelloHelloHelloHelloHello6行!为什么呢?首先,你要明白os.fork()创建的子进程会接着下一行代码继续执行,它有返回值,返回值可以为0表示子进程或者大于0表示父进程pid,os.getpid()

系统 2019-09-27 17:48:15 2228