一、定义见百度百科链表链表由表头和节点组成,节点分为数据域和指针域,数据域中存贮数据元素,指针域存储下个结点的地址二、单链表实现逻辑创建节点类Node和链表类Linklist,Linklist类中包含head属性,head的值为0或Node对象,Node类中包含value属性存储数据,next属性存储下个节点的地址(Node对象)循环节点从head开始取next属性,直到next=0为止,返回当前对象添加节点时调用循环方法返回最后一个节点对象,把返回节点的
系统 2019-09-27 17:51:27 2298
有时候需要比较大的计算量,这个时候Python的效率就很让人捉急了,此时可以考虑使用numba进行加速,效果提升明显~(numba安装貌似很是繁琐,建议安装Anaconda,里面自带安装好各种常用科学计算库)fromnumbaimportjit@jitdeft(count=1000):total=0foriinrange(int(count)):total+=ireturntotal测试效果:(关于__wrapped__见我的博文:浅谈解除装饰器作用(py
系统 2019-09-27 17:50:24 2298
在python的BeautifulSoup4扩展库的使用过程中出现了TypeError:listindicesmustbeintegersorslices,notstr这个错误,这里就分析一下为什么会报错以及如何解决。这个错误的意思是'类型错误:list的索引必须是'integers'或者'slices'不能是'str'我出现错误的代码:#引入库frombs4importBeautifulSoup#读取页面soup=BeautifulSoup(open('
系统 2019-09-27 17:49:33 2298
Python简介Python是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。Python的设计具有很强的可读性,相比其他语言经常使用英文关键字,其他语言的一些标点符号,它具有比其他语言更有特色语法结构。Python是一种解释型语言:这意味着开发过程中没有了编译这个环节。类似于PHP和Perl语言。Python是交互式语言:这意味着,您可以在一个Python提示符,直接互动执行写你的程序。Python是面向对象语言:这意味着Python支持面
系统 2019-09-27 17:47:39 2298
python中的lambda通常是用来在python中创建匿名函数的,而用def创建的方法是有名称的,除了从表面上的方法名不一样外,python中的lambda还有如下几点和def不一样:1.pythonlambda会创建一个函数对象,但不会把这个函数对象赋给一个标识符,而def则会把函数对象赋值给一个变量。2.pythonlambda它只是一个表达式,而def则是一个语句。下面是pythonlambda的格式,看起来非常精简。lambdax:printx
系统 2019-09-27 17:47:09 2298
前言:大家跟我一起念,Python大法好,跟着本宝宝用Python抢火车票首先我们需要splinter安装:pipinstallsplinter-ihttp://pypi.douban.com/simple--trusted-hostpypi.douban.com然后还需要一个浏览器的驱动,当然用chrome啦下载地址:http://chromedriver.storage.googleapis.com/index.html?path=2.20/根据下载的
系统 2019-09-27 17:45:45 2298
Python多线程实例详解多线程通常是新开一个后台线程去处理比较耗时的操作,Python做后台线程处理也是很简单的,今天从官方文档中找到了一个Demo.实例代码:importthreading,zipfileclassAsyncZip(threading.Thread):def__init__(self,infile,outfile):threading.Thread.__init__(self)self.infile=infileself.outfile
系统 2019-09-27 17:38:27 2298
词语练习class:告诉python创造一个新的东西object:两个意思:最基本的东西和任何实例化的东西。instance:创建一个类得到的东西。def:在类中创建一个函数。self:在类里面的函数中使用,是实例和object能访问的变量。inheritance:继承,一个类可以继承另一个类,像你和你的父母。composition:一个类可以包含另外一个类,就像汽车包含轮胎。attribute:一个属性类,通常包括变量。is-a:表示继承关系has-a:
系统 2019-09-27 17:38:27 2298
一、简介Shp格式是GIS中非常重要的数据格式,主要在Arcgis中使用,但在进行很多基于网页的空间数据可视化时,通常只接受GeoJSON格式的数据,众所周知JSON(JavaScriptObjectNonation)是利用键值对+嵌套来表示数据的一种格式,以其轻量、易解析的优点,被广泛使用与各种领域,而GeoJSON就是指在一套规定的语法规则下用JSON格式存储矢量数据,本文就将针对GeoJSON的语法规则,以及如何利用Python完成Shp格式到Geo
系统 2019-09-27 17:56:39 2297
一、pythonnumpy+matplotlib画股票k线图#--coding:utf-8--importrequestsimportnumpyasnpfrommatplotlibimportpyplotaspltfrommatplotlibimportanimationfig=plt.figure(figsize=(8,6),dpi=72,facecolor="white")axes=plt.subplot(111)axes.set_title('Sha
系统 2019-09-27 17:55:36 2297
写在前面如非特别说明,下文均基于Python3命名空间与作用于跟名字的绑定相关性很大,可以结合另一篇介绍Python名字、对象及其绑定的文章。1.命名空间1.1什么是命名空间Namespace命名空间,也称名字空间,是从名字到对象的映射。Python中,大部分的命名空间都是由字典来实现的,但是本文的不会涉及命名空间的实现。命名空间的一大作用是避免名字冲突:deffun1():i=1deffun2():i=2同一个模块中的两个函数中,两个同名名字i之间绝没有
系统 2019-09-27 17:55:24 2297
最近我用Python做了一个国际象棋程序并把代码发布在Github上了。这个代码不到1000行,大概20%用来实现AI。在这篇文章中我会介绍这个AI如何工作,每一个部分做什么,它为什么能那样工作起来。你可以直接通读本文,或者去下载代码,边读边看代码。虽然去看看其他文件中有什么AI依赖的类也可能有帮助,但是AI部分全都在AI.py文件中。AI部分总述AI在做出决策前经过三个不同的步骤。首先,他找到所有规则允许的棋步(通常在开局时会有20-30种,随后会降低到
系统 2019-09-27 17:53:42 2297
logging库提供了两个可以用于日志滚动的class(可以参考https://docs.python.org/2/library/logging.handlers.html),一个是RotatingFileHandler,它主要是根据日志文件的大小进行滚动,另一个是TimeRotatingFileHandler,它主要是根据时间进行滚动。在实际应用中,我们通常根据时间进行滚动,因此,本文中主要介绍TimeRotaingFileHandler的使用方法(R
系统 2019-09-27 17:52:54 2297
Python在读取文件内容时的路径问题,值得深究一下.我想讨论的重点还是在绝对路径上面.在这之前我们先看一下1:相对路径这张图演示了在相对路径下寻找查找指定文件.open('相对路径演示'\'相对路径示例'.txt)打开的是相对当前运行的程序所在目录。而我当前运行的程序相对位置在桌面.所以直接print(lines)可以看到这个结果2:绝对路径.绝对路径的查找方法就不演示了,相信每个人都会找到。但是我想讨论的是几个关于路径中的编码问题,相信这对初学者们有很
系统 2019-09-27 17:52:11 2297
本文定位:想通过python调用top命令获取cpu使用率但暂时没有思路的情况。如果单纯为了获得cpu的利用率,通过top命令重定向可以轻松实现,命令如下:复制代码代码如下:top-bi>cpuHistory.log或复制代码代码如下:top-bi|teecpuHistory.log这个就不解释了,不懂的朋友查询下top的帮助文档。这里要实现的是通过python调用top命令,并获得cpu的利用率信息。用过popen的朋友很快就能想到类似如下的代码(这个是
系统 2019-09-27 17:51:42 2297