编程技术

编写自己的IDE

如何在图形界面中实时捕获控制台程序的标准输出[王咏刚]IDE是集成开发环境(IntegratedDevelopmentEnvironment)的简称。印象里有很多出色的IDE,比如JBuilder和Kylix,比如VisualStudio。不知大家是否留意过,大多数IDE本身只提供代码编辑、工程管理等人机交互功能,我们在IDE中编译代码、调试程序时,IDE需要调用命令行的编译器、调试器完成相应的操作。例如,使用VisualStudio编译C++程序时,我们

系统 2019-08-29 22:33:07 2545

编程技术

处身于世

“与天斗,其乐无穷;与地斗,其乐无穷;与人斗,其乐无穷。”这是一个置己身于世,披荆斩棘的精神。首先,有此精神,已经疏为不易,要经历多少波折世事,才能悟到,暂且不提。有了此种精神后,在斗争的过程中,如何游刃有余。不禁值得思考。处身于世,却并能冷静旁观,风里雨里,把握方向。不被左右,在海上,飓风之下,恐难把持。人生这个舞台上,却会如何?多少人走过这个历程,忧伤徘徊有之,感伤莫名有之。能自由徜徉的却不知有几?我自敢想,无论何时,心中应如品茶般安静。方能处事不乱,

系统 2019-08-29 22:05:02 2545

编程技术

常见NIO开源框架(MINA、xSocket)学习 (转自j

http://unbounder.iteye.com/blog/481396http://unbounder.iteye.com/blog/481668基于io包的阻塞式socket通信代码简单,在连接数很少的情况下是一个不错的选择。不过实际应用中一个socket服务器采用传统的阻塞式socket方式通信可能会是一场灾难,一路socket同时进行读写操作可能就需要两条线程,如果需要并发一百路socket(这个量其实很小了),可能就是两百条线程,大概几分钟后

系统 2019-08-12 09:30:05 2545

编程技术

毛里求斯之旅

各位朋友:过年好!我已经从毛里求斯度假归来,在哪里领略了异国风情,观赏了美景,品尝了美味,并且在那里度过了新春佳节,别有一番情趣。现发给大家一些照片,一起欣赏。庞心田2月7日毛里求斯之旅

系统 2019-08-12 01:33:16 2545

Python

Python 输出详细的异常信息(traceback)

问题描述为了程序的正常运行,进行异常处理是有必要的,甚至于有时候,我们会主动的抛出异常,然后让程序进行异常捕获,再进行进一步的处理。但是,在开发的程序相对较大的过程中,我们不能一昧的进行try....except。而是要弄清楚到底抛出的是什么异常,同时,对于某些未知的异常,我们应该清楚的定位到到底是哪一行程序抛出的异常,针对这种情况,traceback库能极大的帮助我们。解决方法代码只需一行,即print(traceback.format_exc())即可

系统 2019-09-27 17:57:48 2544

Python

python爬虫项目设置一个中断重连的程序的实现

做爬虫项目时,我们需要考虑一个爬虫在爬取时会遇到各种情况(网站验证,ip封禁),导致爬虫程序中断,这时我们已经爬取过一些数据,再次爬取时这些数据就可以忽略,所以我们需要在爬虫项目中设置一个中断重连的功能,使其在重新运行时从之前断掉的位置重新爬取数据。实现该功能有很多种做法,我自己就有好几种思路,但是真要自己写出来就要费很大的功夫,下面我就把自己好不容易拼凑出来的代码展示出来吧。首先是来介绍代码的思路:将要爬取的网站连接存在一个数组new_urls中,爬取一

系统 2019-09-27 17:56:18 2544

Python

对于Python深浅拷贝的理解

1,浅拷贝是什么?浅拷贝是对于一个对象的顶层拷贝,通俗的理解是:拷贝了引用,并没有拷贝内容通过a=b这种方式赋值只是赋值的引用(内存地址),a和b都指向了同一个内存空间,所以他们的id(地址相同),这种就是浅拷贝2,深拷贝是什么?通过调用copy包里的deepcopy方法来深拷贝,其实就是在内存区在分配保存了和a相同的数据,用c来指向它,和a的内存地址不同。怎么验证就是我说的这种情况的呢?用下图来说明吧:可以看出向a添加一个元素,通过浅拷贝的b也随着改了,

系统 2019-09-27 17:54:42 2544

Python

Python 爬取CSDN博客文章

新建一个module,用于根据用户名来获取文章的url#coding=utf-8frombs4importBeautifulSoupimportrequests#获取博客文章数量defget_page_size(user_name):article_list_url='https://blog.csdn.net/'+user_namereq=requests.get(url=article_list_url)article_list_html=req.te

系统 2019-09-27 17:54:34 2544

Python

python实现合并多个list及合并多个django QuerySet的方法

本文实例讲述了python实现合并多个list及合并多个djangoQuerySet的方法。分享给大家供大家参考,具体如下:在用python或者django写一些小工具应用的时候,有可能会遇到合并多个list到一个list的情况。单纯从技术角度来说,处理起来没什么难度,能想到的办法很多,但我觉得有一个很简单而且效率比较高的方法是我以前没注意到的。那就是利用chain方法来合并多个list.同样也可以用来合并django的QuerySet.1.python用

系统 2019-09-27 17:53:44 2544

Java

大厂测试开发常见面试题收集(python,java,性能等)

1.Python中方法的参数是值传递还是引用传递?答:如果参数是常量则为值传递,如果参数是变量则为引用传递2.Python中元组和列表的区别答:1.元祖不可修改。2.元祖不可删除3.Linux中查找某个文件并删除它答:find/-name“*filename”|xargsrm-rf4.Linux查询CPU、内存的指令答:topcat/proc/cpuinfo|grep“physicalid”|sort|uniq|wc-l;查看物理CPU个数free-h,v

系统 2019-09-27 17:52:37 2544

Python

python对矩阵进行转置的2种处理方法

方法一:使用常规的思路deftranspose(M):#初始化转置后的矩阵result=[]#获取转置前的行和列row,col=shape(M)#先对列进行循环foriinrange(col):#外层循环的容器item=[]#在列循环的内部进行行的循环forindexinrange(row):item.append(M[index][i])result.append(item)returnresult思路:矩阵的转置就是从行变成列,列变成行先定义一个最终存

系统 2019-09-27 17:50:28 2544

Python

python opencv3 目标跟踪 8.1

#最基本的运动检测计算帧之间的差异,或者考虑背景帧与其他帧之间的差异importcv2importnumpyasnpcamera=cv2.VideoCapture(0)#参数0表示第一个摄像头#判断视频是否打开if(camera.isOpened()):print('Open')else:print('摄像头未打开')#测试用,查看视频sizesize=(int(camera.get(cv2.CAP_PROP_FRAME_WIDTH)),int(camer

系统 2019-09-27 17:49:50 2544

Python

对Python函数设计规范详解

Python函数的设计规范1、Python函数设计时具备耦合性和聚合性1)、耦合性:(1).尽可能通过参数接受输入,以及通过return产生输出以保证函数的独立性;(2).尽量减少使用全局变量进行函数间通信;(3).不要在函数中直接修改可变类型的参数;(4).避免直接改变定义在另外一个模块中的变量;2)、聚合性:(1).每个函数都应该有一个单一的、目的统一的目标;(2).每个函数的功能都应该相对简单;2、Python函数在脚本中应用示例例1:将/etc/p

系统 2019-09-27 17:49:05 2544

Python

python之爬取页面(urllib库)

urllib库是python内置的http请求库,包含四个模块:函数说明urllib.request请求模块urllib.error异常处理模块urllib.parseURL解析模块urllib.robotparserrobots.txt模块robots.txt是Robots协议(网络爬虫排除协议),是互联网界通行的道德模范,基于以下原则:搜索技术应服务于人类,同时尊重信息提供者的意愿,并维护其隐私权网站有义务保护其使用者的个人信息和隐私不被侵犯爬取白度网

系统 2019-09-27 17:48:19 2544