针对本题,大部分题解是使用的深度优先算法实现的,本文提供了广度优先的解决方案。1、深度优先classSolution:deffindCircleNum(self,M):visited,ans=set(),0defdfs(i):forjinrange(len(M[i])):ifM[i][j]andjnotinvisited:visited.add(j)dfs(j)foriinrange(len(M)):ifinotinvisited:dfs(i)ans+=
系统 2019-09-27 17:51:52 2273
接上文再继续我们的爬虫,这次我们来述说Urllib库1,什么是Urllib库Urllib库是python内置的HTTP请求库urllib.request请求模块urllib.error异常处理模块urllib.parseurl解析模块urllib.robotparserobots.txt解析模块不需要额外安装,python自带的库。注意:python2importurllib2response=urllib2.urlopen('http://baidu.c
系统 2019-09-27 17:50:06 2273
基本的写代码流程:1、创建xxx.py文件注意:文件不要保存在中文的路径下,和文件名不要以中文命名。2、写代码a.注意两行文件头a.注意两行文件头b.写功能代码3、执行代码a.打开终端b.输入python命令,即python代码文件的路径(例:pythond:\test\mytest.py)知识点一:xxx.py文件的文件头部信息#!/usr/bin/envpython#-*-coding:utf-8-*-知识点二:input()用于与用户交互,等待用户输
系统 2019-09-27 17:49:47 2273
PythonORM概览作为一个美妙的语言,Python除了SQLAlchemy外还有很多ORM库。在这篇文章里,我们将来看看几个流行的可选ORM库,以此更好地窥探到PythonORM境况。通过写一段脚本来读写2个表,person和address到一个简单的数据库,我们能更好地理解每个ORM库的优缺点。SQLObjectSQLObject是一个介于SQL数据库和Python之间映射对象的PythonORM。得益于其类似于RubyonRails的ActiveR
系统 2019-09-27 17:49:05 2273
定义:bool()函数用于将给定参数转换为布尔类型,如果没有参数,返回False。bool是int的子类。语法:以下是bool()方法的语法:classbool([x]参数x--要进行转换的参数。返回值返回Ture或False。实例:以下展示了使用bool函数的实例:1Python3.7.1(default,Dec142018,13:28:58)2[Clang4.0.1(tags/RELEASE_401/final)]::Anaconda,Inc.onda
系统 2019-09-27 17:49:01 2273
最近编写自己的rpc小框架,涉及到bytes.这里就想梳理一下编码与python的字符串和字节码(bytes)类型.先上个图,有个印象,随时可以回头看.#前置知识字符:在计算机和电信技术中,一个字符是一个单位的字形、类字形单位或符号的基本信息。即一个字符可以是一个中文汉字、一个英文字母、一个阿拉伯数字、一个标点符号等;字符集:多个字符的集合。例如GB2312是中国国家标准的简体中文字符集;字符编码:将某个字符集中的字符转换成一个唯一编号(码点,二进制数据)
系统 2019-09-27 17:48:25 2273
使用urllib2,太强大了试了下用代理登陆拉取cookie,跳转抓图片......文档:http://docs.python.org/library/urllib2.html直接上demo代码了包括:直接拉取,使用Reuqest(post/get),使用代理,cookie,跳转处理#!/usr/bin/python#-*-coding:utf-8-*-#urllib2_test.py#author:wklken#2012-03-17wklken@yeah
系统 2019-09-27 17:48:01 2273
Trifinder事件实例实例展示Trifinder对象对的使用。当鼠标移动到一个被分割的三角形上,这个三角形高亮显示,并且它的标签在图标题显示。展示下演示结果:完整代码:importmatplotlib.pyplotaspltfrommatplotlib.triimportTriangulationfrommatplotlib.patchesimportPolygonimportnumpyasnpdefupdate_polygon(tri):iftri=
系统 2019-09-27 17:38:42 2273
2.存储过程内部块2.1内部块我们知道了存储过程的结构,语句块由begin开始,以end结束。这些块是可以嵌套。在语句块中可以嵌套任何以下的块。Java代码Declare…begin…exception…end;createorreplaceprocedureinnerBlock(p1varchar2)aso1varchar2(10):='out1';begindbms_output.put_line(o1);declareinner1varchar2(2
系统 2019-08-29 23:48:57 2273
在写这个自动化测试框架的时候,我一直在留意各方面的需求。毕竟,我本人并没有做过真正的自动化测试。管理测试方面的领导,提出一个需求,就是在用例运行失败的时候,应该将过程记录下来,并形成报告,Email给相关人员。个人认为这个需求是非常合理的。事实上,任何系统,如果没有输出,那么只能停留在程序员手里。有了报表,才叫真正解决了用户的目标需求。在分析这个需求的过程,我提出了针对每一个操作接口的每一个方法,进行Log。而完成这个工作的第一方法,就想到了AOP,也就是
系统 2019-08-29 23:23:00 2273