针对本题,大部分题解是使用的深度优先算法实现的,本文提供了广度优先的解决方案。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 2151
fromcopyimport*#String浅复制aList=[3,5,7]bList=aList[::]flag=aList==bListprint(flag)flag=aListisbListprint(flag)#Answer#True#False#切片aList=[3,5,7,9]aList[:3]=[]#删除列表中前3个元素print(aList)#Answer:#[9]aList=[3,5,7,9,11]delaList[:3]#同上print
系统 2019-09-27 17:50:39 2151
HTMLParser是python用来解析html的模块。它可以分析出html里面的标签、数据等等,是一种处理html的简便途径。HTMLParser采用的是一种事件驱动的模式,当HTMLParser找到一个特定的标记时,它会去调用一个用户定义的函数,以此来通知程序处理。它主要的用户回调函数的命名都是以handler_开头的,都是HTMLParser的成员函数。当我们使用时,就从HTMLParser派生出新的类,然后重新定义这几个以handler_开头的函
系统 2019-09-27 17:50:28 2151
下表列出了所有的Python语言的支持位运算符。假设变量a持有60和变量b持有13,则:示例:试试下面的例子就明白了所有的Python编程语言提供了位运算符:#!/usr/bin/pythona=60#60=00111100b=13#13=00001101c=0c=a&b;#12=00001100print"Line1-Valueofcis",cc=a|b;#61=00111101print"Line2-Valueofcis",cc=a^b;#49=001
系统 2019-09-27 17:47:52 2151
哪个Python版本?当我提及Python,所指的就是CPython2(准确的是2.7).我会显式提醒那些相同的代码在CPython3(3.3)上是不工作的,以及提供一份解释不同之处的备选代码。请确保你已经安装了CPython,在终端上输入python或者python3回车,然后你在终端上应该能看到python的提示符(prompt)。请注意,所有的程序在它们第一行都是#!/usr/bin/env/python,也就是说,我们想要Python的解释器来执行
系统 2019-09-27 17:47:31 2151
什么是R语言?R语言,一种自由软件编程语言与操作环境,主要用于统计分析、绘图、数据挖掘。R本来是由来自新西兰奥克兰大学的罗斯・伊哈卡和罗伯特・杰特曼开发(也因此称为R),现在由“R开发核心团队”负责开发。R基于S语言的一个GNU计划项目,所以也可以当作S语言的一种实现,通常用S语言编写的代码都可以不作修改的在R环境下运行。R的语法是来自Scheme。R的源代码可自由下载使用,亦有已编译的可执行文件版本可以下载,可在多种平台下运行,包括UNIX(也包括Fre
系统 2019-09-27 17:46:31 2151
Python是一个美丽的语言,可以激发用户对它的爱。所以如果你试图加入程序员行列,或者你有点厌倦C++,Perl,Java和其他语言,我推荐你尝试Python.Python有很多吸引程序员的功能,它易学,面向对象,字节码编译,免费且开源。还有运行时检查。完整快速的支持,可以执行各种任务的扩展。高效的Python在这篇文章,我想强调一些Python可以节约时间并最大限度地提高生产力的方面。在做准备时,我咨询了几个Pythonists,他们最节省时间的技巧是什
系统 2019-09-27 17:38:22 2151
python中的参数:形参实参形参:形式上的参数,可以理解为数学中的x,没有实际的值,通过别人赋值后才有意义。相当于变量实参:实际意义上的参数,是一个世纪存在的参数,可以是字符串或者数字等。就是在函数名中定义一个形参,然后在函数调用的时候,给函数名中的形参传递一个实际的参数,这个就是实参。这样的话执行函数时就会使用参数执行相应的操作。deffunc(a):#a是形参print(a)func(1)#1是实参#代码运行结果为:1形参中*的作用:deffunc(
系统 2019-09-27 17:57:44 2150
前段时间有个需求是要求查一段时间的dns上的域名访问次数排行(top100),没办法,只好慢慢的去解析dns日志呗,正好学习了python,拿来练练手。1.原始数据分析:首先看下原始数据文件,即dns日志内容,下面是抽取的几条有代表性的日志,2×8.2×1.2x.1×5这种中间的x是相应的数字被我抹去了。复制代码代码如下:13-08-3003:11:34,226INFO:queries:�C|1×3.2×8.2×0.2×0|config.dengluqi.
系统 2019-09-27 17:56:48 2150
今天看到everything搜索速度秒杀windows自带的文件管理器,所以特地模仿everything实现了文件搜索以及打开对应文件的功能,首先来一张搜索对比图。这是evething搜索效果:这是自己实现的效果:主要功能就是python的os库的文件列表功能,sqllite创建表,插入数据以及模糊搜索,然后就是tkiner实现的界面功能。全部代码贴出来做一次记录,花费一天时间踩坑。#coding=utf-8importtkinterastkimportt
系统 2019-09-27 17:56:39 2150
今天写这个,要用python去除字符串中的换行符并写入文件,网上查阅,就一句代码replace("\n",""),加上之后,搞了半天,还是不对。以上是我今天遇到的问题,以下是解决方案。本地测试是window系统,正式用的时候是unix服务器。两者对换行符具体有什么差别我也不是很清楚。于是将字符串写入的文件用notepad++打开,显示行尾符(如何用notepad++显示行尾符自己百度),发现是CR,所以将代码改为replace("\r",""),完美解决总
系统 2019-09-27 17:53:39 2150
异常1.定义:运行时检测到的错误。2.现象:当异常发生时,程序不会再向下执行,而转到函数的调用语句。3.常见异常类型:–名称异常(NameError):变量未定义。–类型异常(TypeError):不同类型数据进行运算。–索引异常(IndexError):超出索引范围。–属性异常(AttributeError):对象没有对应名称的属性。–键异常(KeyError):没有对应名称的键。–为实现异常(NotImplementedError):尚未实现的方法。–
系统 2019-09-27 17:50:45 2150
pip是Python包管理工具,该工具提供了对Python包的查找、下载、安装、卸载的功能。注意点:1.如果只安装了一个版本的python,直接pip就可以使用2.如果同时安装了python2和python3,py-2-mpip/py-3-mpip来区分使用哪个版本的python3.直接pip默认python2pip常用命令:pip--version#查看pip的版本pip--help#查看帮助文档py-3-mpipinstallnose#安装nose包p
系统 2019-09-27 17:50:31 2150
环境:编辑工具:浏览器:安装xlrd安装DDT一分析1目录结构2导入包二代码importxlrdclassExcelUtil():def__init__(self,excelPath,sheetName="Sheet1"):self.data=xlrd.open_workbook(excelPath)self.table=self.data.sheet_by_name(sheetName)#获取第一行作为key值self.keys=self.table.r
系统 2019-09-27 17:50:29 2150
主流的webserver一个巴掌就能数出来,apache,lighttpd,nginx,iisapplication,中文名叫做应用服务,就是你基于某个webframework写的应用代码DBserver泛指存储服务,web开发中用mysql比较多,最近几年因为网站规模扩大,memcache,redis这种key-value等存储也流行开来放在最前面的webserver有3个功能高效率处理静态文件,webserver都是用c开发,调用是native的函数,
系统 2019-09-27 17:48:08 2150