2.快速排序2.1算法思想快速排序是对冒泡排序的一种改进。通过一次排序(设要排序的数组是A[0]……A[N-1],首先任意选取一个数据(通常选用数组的第一个数)作为关键数据,然后将所有比它小的数都放到它左边,所有比它大的数都放到它右边,这个过程称为一次快速排序)将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。快速排序的
系统 2019-09-27 17:49:43 2034
1、a.log文件中包含以下eddy|123|18jay|456|202、目标结构:2.1、['eddy|123|18','jay|456|20']2.2、[['eddy','123','18'],['jay','456','20']]defli(f1):new_li=[]withopen('a.log',mode='r',encoding='utf-8')asf1:data=f1.read()data1=data.split('\n')returndat
系统 2019-09-27 17:49:35 2034
之前用featureCount处理得到结果,要提出第一列gene_id和readcount列,首先软件输出的第一行默认是你使用的命令行,没有用,用bash批量删掉。foriin`ls`;dosed-i'1d'$i;done删除当前文件夹下所有文件第一行。其实提出两列很简单,不过我受够了每次一个文件执行一次的烦。想搞成别的程序调用时命令行参数直接就行。第一次知道sys.argv这玩意,学到了。我设置了-i输入,-o输出这两个参数来判断输入输出文件个数,不过对
系统 2019-09-27 17:49:32 2034
Python标准库中collections对集合类型的数据结构进行了很多拓展操作,这些操作在我们使用集合的时候会带来很多的便利,多看看很有好处。defaultdict是其中一个方法,就是给字典value元素添加默认类型,之前看到过但是没注意怎么使用,今天特地瞅了瞅。首先是各大文章介绍的第一个例子:复制代码代码如下:importcollectionsascolldefdefault_factory():return'defaultvalue'd=coll.d
系统 2019-09-27 17:48:36 2034
文章目录python力扣刷题探索初级算法数组从数组中删除重复项买卖股票的最佳时机II向右旋转数组几次存在重复找出只出现一次的数字的元素两个数组的交集II元素末尾加一移动0的位置到数组末尾求数组中两数之和等于指定值的两个数,并求索引有效的数独旋转图像(zip函数,map函数)python力扣刷题探索初级算法数组从数组中删除重复项classSolution:defremoveDuplicates(self,nums):"""删除重复项后的数组"""if(len
系统 2019-09-27 17:48:25 2034
cmp()方法返回两个数的差的符号:-1如果xy.语法以下是cmp()方法的语法:cmp(x,y)参数x--这是一个数值表达式y--这也是一个数值表达式返回值此方法如果xy则返回1例子下面的例子显示cmp()方法的使用#!/usr/bin/pythonprint"cmp(80,100):",cmp(80,100)print"cmp(180,100):",cmp(180,100)print"cmp(-80,100):",c
系统 2019-09-27 17:47:43 2034
sqrt()方法返回x的平方根(x>0)。语法以下是sqrt()方法的语法:importmathmath.sqrt(x)注意:此函数是无法直接访问的,所以我们需要导入math模块,然后需要用math的静态对象来调用这个函数。参数x--这是一个数值表达式。返回值此方法返回x的平方根,对于x>0。例子下面的例子显示了sqrt()方法的使用。#!/usr/bin/pythonimportmath#Thiswillimportmathmoduleprint"mat
系统 2019-09-27 17:47:36 2034
幸运的是,这一问题还是很容易解决的,我们只需要使用__builtins__:from__builtins__importintaspy_int这样一来我们又可以重新使用python的int了,但在此时叫做py_int.一个function或变量的被覆盖最常见的原因是在引用时使用了"*":fromsomethingimport*当这样使用import时,我们无法明确的指导究竟引入了哪些变量或function,也无法知道这些变量或function是否会覆盖原来
系统 2019-09-27 17:47:24 2034
pythonformat格式化函数用法原文Python2.6开始,新增了一种格式化字符串的函数str.format(),它增强了字符串格式化的功能。基本语法是通过{}和:来代替以前的%。format函数可以接受不限个参数,位置可以不按顺序。1.使用位置参数>>>"{}{}".format("hello","world")#不设置指定位置,按默认顺序'helloworld'>>>"{0}{1}".format("hello","world")#设置指定位置'
系统 2019-09-27 17:47:11 2034
一.语法列表解析式是将一个列表(实际上适用于任何可迭代对象(iterable))转换成另一个列表的工具。在转换过程中,可以指定元素必须符合一定的条件,才能添加至新的列表中,这样每个元素都可以按需要进行转换。好处:1.简洁2.高效其实列表解析式并不是必须的,因为它能完成的工作都能够通过for循环完成,但是列表解析式比手动的for循环语句运行得更快(往往速度快一倍),因为它们的迭代在解释器内部是以C语言的速度执行的,而不是以手动的Python代码执行的,特别是
系统 2019-09-27 17:45:28 2034