Python - 军军小站|张军博客
Python

十大经典排序算法 python版

0.概述01.算法分类在排序算法中,根据时间复杂度的不同可以将排序算法分为两类:比较类排序:通过比较来决定元素间的相对次序,由于其时间复杂度不能突破O(nlogn)(下限),因此称为非线性时间比较类排序。非比较类排序:不通过比较来决定元素间的相对次序,它可以突破基于比较排序的时间下界,以线性时间运行,因此称为线性时间非比较类排序。02.算法复杂度03.稳定和不稳定稳定:如果a原本在b前面,而a=b,排序之后a仍然在b的前面。不稳定:如果a原本在b的前面,而

系统 2019-09-27 17:50:32 2057

Python

看懂Python这十大特征,可少走一半弯路,网友大呼:为什么不早点告诉我!

关于PythonPython是一种极少数能声言兼具简单与功能强大的编程语言。你将惊异于发现你正在使用的这门编程语言是如此简单,它专注于如何解决问题,而非拘泥于语法与结构。名字背后的故事Python的创造者吉多·范罗苏姆(GuidovanRossum)采用BBC电视节目《蒙提·派森的飞行马戏团(MontyPython’sFlyingCircus,巨蟒剧团)》的名字来为这门编程语言命名。尽管他本人并不特别喜欢蟒蛇这种通过在猎物身边卷曲自己的身体以此来碾碎猎物身

系统 2019-09-27 17:50:31 2057

Python

Python对两个有序列表进行合并和排序的例子

假设有2个有序列表l1、l2,如何效率比较高的将2个list合并并保持有序状态,这里默认排序是正序。思路是比较简单的,无非是依次比较l1和l2头部第一个元素,将比较小的放在一个新的列表中,以此类推,直到所有的元素都被放到新的列表中。考虑2个列表l1=[2],l2=[1],如何将他们合并呢?(注意:下面实现会改变l1和l2本来的值)复制代码代码如下:defsignle_merge_sort(l1,l2):tmp=[]ifl1[0]

系统 2019-09-27 17:48:25 2057

Python

python之爬取页面(urllib库)

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

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

Python

遍历python字典几种方法总结(推荐)

如下所示:aDict={'key1':'value1','key2':'value2','key3':'value3'}print'-----------dict-------------'fordinaDict:print"%s:%s"%(d,aDict[d])print'-----------item-------------'for(k,v)inaDict.items():print'%s:%s'%(k,v)#效率最高print'----------

系统 2019-09-27 17:38:15 2057

Python

python字符串编码识别模块chardet简单应用

python的字符串编码识别模块(第三方库):官方地址:http://pypi.python.org/pypi/chardetimportchardetimporturllib#可根据需要,选择不同的数据TestData=urllib.urlopen('http://www.baidu.com/').read()printchardet.detect(TestData)#运行结果:#{'confidence':0.99,'encoding':'GB2312

系统 2019-09-27 17:37:46 2057

Python

centos5 install python2.6 and pymsssql

劳工的天空(博客空间搬家了)_百度空间迁移记录背景:原来在ubuntu9.04上开发的系统,要在centos5上面进行部署,环境变化很大,代码拷贝过去无法运行1、将系统升级yumupdate2、安装python2.6centos5上面默认安装的是python2.4,需要并行安装一个python2.6yuminstallgcc*automake*make*lib*python*perl*wgetyuminstallopensslopenssl-develsq

系统 2019-08-12 01:31:48 2057

Python

Python - 爬虫中文乱码之请求头 Accept-Encoding

原文链接:https://www.jianshu.com/p/70c3994efcd8?utm_source=oschina-app当用Python3做爬虫的时候,一些网站为了防爬虫会设置一些检查机制,这时我们就需要添加请求头,伪装成浏览器正常访问。header的内容在浏览器的开发者工具中便可看到,将这些信息添加到我们的爬虫代码中即可。Accept-Encoding:是浏览器发给服务器,声明浏览器支持的编码类型。一般有gzip,deflate,br等等。P

系统 2019-09-27 17:57:30 2056

Python

python通过txt文件批量安装依赖包的实现步骤

如果要用某个开源框架,需要安装多个依赖包可以如下操作:如依赖文件形式如下(可以不要版本号):txt文件名为requirements.txt,内容为:sklearn==0.0subprocess32==3.2.7tablestore==4.3.4tensorboard==1.8.0tensorflow==1.8.0可以用如下命令安装:$pipinstall-rrequirements.txt接下来坐等,偶尔看一下,有些包下载可能会出现timeout,重新执行

系统 2019-09-27 17:57:28 2056

Python

【python爬虫】Pycharm+Scrapy+win10搭建scrapy

准备工作基础环境准备win10pycharmpython3(同时保证有pip环境)scrapy环境准备打开网址https://www.lfd.uci.edu/~gohlke/pythonlibs/下载Twisted(按python版本+系统位数对应)(浏览器下ctrl+f直接搜索)下载scrapy(截止本文撰写,当前版本是:Scrapy-1.6.0-py2.py3-NONE-any.whl)(不区分系统和python版本)准备好这两个whl文件(我习惯在桌

系统 2019-09-27 17:54:59 2056

Python

学生时代的经历,利用Python在机房杀红蜘蛛,脱离老师控制!

这个为什么说是一次学生时代的经历呢,我的出发点并没有是为了吊胃口。确实,这个Python小应用,只能在学生时代用得着吧,尤其是高中和大学,如果你没有想到也没关系,看完我下面说的就会明白了。对红蜘蛛软件感到陌生?由于电脑教学机房都是没有投影仪的,所以才有了这款红蜘蛛控制软件,在局域网络上控制学生电脑,实现屏幕监视和远程控制的功能。简单来说,就是老师为了防止学生不好好上课,利用机房电脑去做其它事情的一种流氓类型软件。为何称之为牛皮糖软件?因为你的电脑都被老师控

系统 2019-09-27 17:54:31 2056

Python

python读取并写入mat文件的方法

先给大家介绍下python读取并写入mat文件的方法用matlab生成一个示例mat文件:clear;clcmatrix1=magic(5);matrix2=magic(6);savematData.mat用python3读取并写入mat文件:importscipy.iodata=scipy.io.loadmat('matData.mat')#读取mat文件#print(data.keys())#查看mat文件中的所有变量print(data['matri

系统 2019-09-27 17:53:43 2056

Python

报错:Command "python setup.py egg_info

安装pydensecrf时报错:(venv)dorothy@dorothy-MS-7A94:~/project/venv/bin$pipinstallpydensecrfCollectingpydensecrfUsingcachedhttps://files.pythonhosted.org/packages/31/5a/1c2ab48e8019d282c128bc5c621332267bb954d32eecdda3ba57306b1551/pydense

系统 2019-09-27 17:52:22 2056

Python

Python通用函数实现数组计算的方法

一.数组的运算数组的运算可以进行加减乘除,同时也可以将这些算数运算符进行任意的组合已达到效果。>>>x=np.arange(5)>>>xarray([0,1,2,3,4])>>>x=5>>>x=np.arange(5)>>>x+5array([5,6,7,8,9])>>>x-5array([-5,-4,-3,-2,-1])>>>x*2array([0,2,4,6,8])>>>x/2array([0.,0.5,1.,1.5,2.])>>>x//2array(

系统 2019-09-27 17:52:10 2056