这道题是并查集的题,写过这道题之后,我明白了一点,就是从根上改变所属father域#include#include#include#includeintp[30000+100];inta[30000+100];intfind(intx){if(p[x]==x)returnx;p[x]=find(p[x]);returnp[x]
系统 2019-08-29 22:28:15 2079
前言在Python中可迭代(Iterable)、迭代器(Iterator)和生成器(Generator)这几个概念是经常用到的,初学时对这几个概念也是经常混淆,现在是时候把这几个概念搞清楚了。0x00可迭代(Iterable)简单的说,一个对象(在Python里面一切都是对象)只要实现了只要实现了__iter__()方法,那么用isinstance()函数检查就是Iterable对象;例如classIterObj:def__iter__(self):#这里
系统 2019-09-27 17:56:54 2078
一个简易的TCP端口扫描器,使用python3实现。需求:扫描目标网站开放哪些端口号,将所有开放的端口号输出。分析:使用socket连接,如果连接成功,认为端口开放,如果连接失败,认为端口关闭(有可能端口开放但连接失败,这里简单认为端口不开放)使用到的库:socket,threading过程:先定义一个函数,对给定的(ip,port)进行扫描,看其是否能连接成功。deftcpPortScan(ip,port,openPort):sock=socket.so
系统 2019-09-27 17:55:41 2078
上一篇:计算机二级Python学习笔记(一)其实昨天Python并没有安装成功,打开就报错:于是今天先解决这个问题,搜了一下api-ms-win-crt-process-1-1-0.dll丢失,感谢这位老铁的博客解决了我的问题【api-ms-win-crt-process-l1-1-0.dll丢失的处理,个人觉得完美】,分享给大家,如果因为系统丢失dll文件报错可以借鉴一下。完美运行,继续学习。第2章Python语言基本语法元素2.1程序的格式框架缩进:T
系统 2019-09-27 17:55:20 2078
如下所示:#文件内容lisilock=open("lock_info.txt","r+",encoding="utf-8")lock_line=lock.readline()lock_list=lock_line.split(",")print(lock_list)y=lock_line.encode('utf-8').decode('utf-8-sig')print(y)#打印结果如下['\ufefflisi']lisi以上这篇python字符串转列表l
系统 2019-09-27 17:55:03 2078
之前想爬取一些淘宝的数据,后来发现需要登录,找了很多的资料,有个使用request的sessions加上cookie来登录的,cookie的获取在登录后使用开发者工具可以找到。不过这个登录后获得的网页的代码是静态的,获取动态网页还得另寻他法,一般需要的数据可以在网页的源码中得到,但是你知道的,有些动态加载的就不是那么简单了,而且我发现这样获得的源码中,有些想要获取的数据的格式是经过改动的,比如我要某个商品的具体链接,发现并不能直接使用。总体而言,这是一次失
系统 2019-09-27 17:54:47 2078
今天闲来无聊无意间看到了百度股票,就想着用python爬一下数据,于是就找到了东方财经网,结合这两个网站,写了一个小爬虫,数据保存在文件中,比较简单的示例,就当做用来练习正则表达式和BeautifulSoupl了。首先页面分析,打开东方财经网股票列表页,和百度股票详情页,右键查看网页源代码,网址后面的代码就是股票代码,所以打算先获取股票代码,然后获取详情,废话少说,直接上代码吧:importreimportrequestsfrombs4importBeau
系统 2019-09-27 17:54:39 2078
本函数可以使用参数real+imag*j方式创建一个复数。也可以转换一个字符串的数字为复数;或者转换一个数字为复数。如果第一个参数是字符串,第二个参数不用填写,会解释这个字符串且返回复数;不过,第二个参数不能输入字符串方式,否则会出错。real和imag参数可以输入数字,如果imag参数没有输入,默认它就是零值,这个函数就相当于int()或float()的功能。如果real和imag参数都输入零,这个函数就返回0j。有了这个函数,就可以很方便地把一个列表转
系统 2019-09-27 17:53:57 2078
1.函数添加importsyssys.pathsys.path.append("c:\\")2.修改pythonpath(试不通)windows:PYTHONPATH3.增加.pth文件(可以)site-packages或者python安装目录添加xx.pth,文件内容为模块目录。linux(ubuntu)/usr/local/lib/python2.7/dist-packageslinux(redhat)/usr/lib/python2.7/site-p
系统 2019-09-27 17:53:45 2078
非阻塞IO(non-blockingIO)Linux下,可以通过设置socket使其变为non-blocking。当对一个non-blockingsocket执行读操作时,流程是这个样子:从图中可以看出,当用户进程发出read操作时,如果kernel中的数据还没有准备好,那么它并不会block用户进程,而是立刻返回一个error。从用户进程角度讲,它发起一个read操作后,并不需要等待,而是马上就得到了一个结果。用户进程判断结果是一个error时,它就知道
系统 2019-09-27 17:53:07 2078