Python数据结构与算法(几种排序)数据结构与算法(Python)冒泡排序冒泡排序(英语:BubbleSort)是一种简单的排序算法。它重复地遍历要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。遍历数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端。冒泡排序算法的运作如下:比较相邻的元素。如果第一个比第二个大(升序),就交换他们两个。对每一对相邻元素
系统 2019-09-27 17:45:58 2077
pythongenerator与coroutine协程简单介绍协程,又称微线程,纤程,英文名Coroutine。协程是一种用户态的轻量级线程,又称微线程。协程拥有自己的寄存器上下文和栈,调度切换时,将寄存器上下文和栈保存到其他地方,在切回来的时候,恢复先前保存的寄存器上下文和栈。因此:协程能保留上一次调用时的状态(即所有局部状态的一个特定组合),每次过程重入时就相当于进入上一次调用的状态,换种说法:进入上一次离开时所处逻辑流的位置。优缺点优点:1.无需线程
系统 2019-09-27 17:45:41 2077
文章的主题不要使用可变对象作为函数的默认参数例如list,dict,因为def是一个可执行语句,只有def执行的时候才会计算默认默认参数的值,所以使用默认参数会造成函数执行的时候一直在使用同一个对象,引起bug。基本原理在Python源码中,我们使用def来定义函数或者方法。在其他语言中,类似的东西往往只是一一个语法声明关键字,但def却是一个可执行的指令。Python代码执行的时候先会使用compile将其编译成PyCodeObject.PyCodeOb
系统 2019-09-27 17:45:28 2077
一、列表(List)list是一个可以在其中存储一系列项目的数据结构。list的项目之间需用逗号分开,并用一对中括号括将所有的项目括起来,以表明这是一个list。下例用以展示list的一些基本操作:#定义一个list对象class_list:class_list=['Michael','Bob','Tracy']#获得一个class_list的长度print'classhave',len(class_list),'students'#访问class_lis
系统 2019-09-27 17:38:23 2077
break负责跳出整个循环>>>foriinrange(10):...ifi%2!=0:...break...else:...print(i)...0注意:但是break只能跳出一层循环,如果程序中有两个循环,第二个循环嵌套在第一个循环中,如果第二个循环被break,那么第一个循环会继续执行。Python不支持一次跳出多个循环。continue是跳出本次循环,继续下一次循环。>>>foriinrange(10):...ifi%2!=0:...continu
系统 2019-09-27 17:37:45 2077
我们最终的视图技巧利用了一个高级python技术。假设你发现自己在各个不同视图里重复了大量代码,就像这个例子:defmy_view1(request):ifnotrequest.user.is_authenticated():returnHttpResponseRedirect('/accounts/login/')#...returnrender_to_response('template1.html')defmy_view2(request):ifno
系统 2019-09-27 17:37:44 2077
1.使用测量工具,量化性能才能改进性能,常用的timeit和memory_profiler,此外还有profile、cProfile、hotshot等,memory_profiler用了psutil,所以不能跟踪cpython的扩展;2.用C来解决费时的处理,c是效率的代名词,也是python用来解决效率问题的主要途径,甚至有时候我都觉得python是c的完美搭档。常用的是Cython,直接把py代码c化然后又能像使用py包一样使用,其次是ctypes,效
系统 2019-09-27 17:37:43 2077
1、获取软件包httpd-2.2.4.tar.gzmysql-6.0.0-alpha.tar.gzphp-5.2.2.tar.gz去相应的官方网站都可以下载到,把它们全部放到/usr/local/src下面.2、安装mysql这三个软件包的安装应该没有先后顺序,但我还是习惯先安装mysql:>tar-zxvfmysql-6.0.0-alpha.tar.gz>cdmysql-6.0.0-alpha>./configure--prefix=/usr/local
系统 2019-08-29 23:46:15 2077
REST风格的URL和ViewView是系统界面和用户之间的一个表现,用户通过链接和按钮来和系统进行交互。传统上Rails的开发人员使用link_to这个helper方法来构造一个链接,这个方法需要一个hashmap,hashmap由controller和action组成;此外,还可以传递一些其他的参数。例如:link_to:controller=>"projects",:action=>"show",:id=>project=>
系统 2019-08-29 23:32:01 2077
前言:本文章抄袭自本人刚刚买的《ASP.NET3.5从入门到精通》这本书,此书介绍在http://www.china-pub.com/44991,本文章95%与此书的内容完全一样,另5%是我改正一些失误以后加上去的,该书原示例代码只能运行在IE核心的浏览器上,非IE核心浏览器上运行会出现些显示问题,本人更改了其中的一些代码。本文章经历昨晚本人五个小时的手打而成(且还未打完,下班回去继续打,想不到我的打字速度退化得这么快,郁闷!!!),俗话说:好记性不如烂笔
系统 2019-08-29 23:17:48 2077