python实用程序
一般
功能编程
do(func,times,showResult=true)
执行指定的参数函数func次次。如果showresult=true,则返回结果列表。
示例用法:do(lambda:print("hello"),5)#Will print "hello" 5 times
doall(func,args=[],showResult=true)
为参数列表执行给定函数
示例用法:do(addFive,[1,2,3],True)#Returns [6,7,8]
dorec(func,times,args=none,showresult=true)
递归地执行给定的函数,将参数函数func的前一个输出作为参数。
如果args参数不是列表、元组或字典,但返回值是,则它将循环遍历所有返回值,并递归地对其应用参数函数,直到达到剩余的指定递归深度。
这由times参数和当前递归级别决定。
例如,如果times=10,第三次迭代产生一个列表,则参数函数将在该列表的内容上再应用7次。
打字检查速记
指示器(项目)/指示器(项目)
检查项目是否可输入
岛列表(项目)isinstance(item,list)
输入(项目)isinstance(item,int)
isfloat(项目)isinstance(item,float)
字符串(项)isinstance(item,str)
ISDICT(项目)isinstance(item,dict)
耦合(项目)isinstance(item,tuple)
获取类型(项)
以字符串形式返回该项的类型。
Iterables
无意义(iterable,item,searchinsubstring=false)
递归地遍历目标iterable和所有嵌套iterable,这意味着它还将检查:所有iterable(列表、元组、用户定义的iterable)的所有子列表、子列表的子列表等
对于字典,它同时检查键和值,包括值中的任何嵌套iterable
如果searchinsubstring=true,它还将检查项是否是任何元素的子字符串。
示例用法:b={"test":3,"other":[1,2,[3,{"yo":[3,"MisterL"]},4],5]}inany(b,"ister")#Falseinany(b,"ister",True)#True, as "ister" is a substring of "MisterL"
allin(lst,otherlst)
检查lst中的所有元素是否都在otherlst
anyin(lst,otherlst)
检查lst中的任何元素是否位于otherlst
TODICT(一级,其他一级)
将两个列表合并到一个字典中,其中lst作为键,otherlst作为值。
如果两个列表的大小不同,则会丢弃较长列表中的多余值。
解析
numparse(字符串,小数点=false,小数点='.')
解析给定字符串中的所有数字并将其返回到列表中。
如果decimals=true,它还将使用decimalpoint解析小数。DecimalPoint也可以设置为不同的值,例如,在分析德语数字时。
示例用法do(lambda:print("hello"),5)#Will print "hello" 5 times0
时间分析(时间字符串)
需要格式为hh:mm或hh:mm:ss的字符串
从参数字符串返回DateTime对象(带秒或不带秒)
日期分析(datestring,分隔符='-',reverse=false,american=false)
需要标准格式的日期字符串(例如yy yy-m m-dd、yy-m-dd等)
分隔符可以更改为解析不同的符号,例如2019/08/12
如果reverse=true,则解析格式为dd-mm-yyyy或类似的日期
如果american=true,则需要yyyy-dd-mm(如果reverse=true,则为mm-dd-yyyy)或类似格式
文件
简单文件操作的缩写。
速记
fileappend(文件名,内容)
将打开文件并将内容附加到文件末尾。如果需要,将转换为字符串并在使用后关闭文件。
文件覆盖(文件名,内容)
将打开文件并用东西覆盖文件内容。如果需要,将转换为字符串并在使用后关闭文件。
filereplace(文件名,regextreplace,replacementstring)/H4>
将打开文件并用replacementstring替换与regexregextreplace匹配的任何内容。使用后关闭文件。
哈斯克尔
实现常见的Haskell便利功能
列出功能
除了product还可以处理字符串。
服用(lst,量)
返回lst的第一个amount索引
下降(lst,数量)
返回lst的最后amount索引
最后(lst)
返回lst的最后一个索引-
头部(lst)
返回lst的第一个索引-
初始(lst)
返回除最后一个索引之外的lst的所有索引。
尾部(lst)
返回除第一个索引之外的lst的所有索引。
产品(LST)
返回列表中所有成员相乘的乘积。有点类似于内置函数sum()
周期(事物,数量)
循环一个列表或字符串,并返回其中的第一个数量字符。do(lambda:print("hello"),5)#Will print "hello" 5 times1
实际上等于do(lambda:print("hello"),5)#Will print "hello" 5 times2
示例用法:do(lambda:print("hello"),5)#Will print "hello" 5 times3
复制(事物,数量)
复制给定的对象并返回包含对象数量次的列表。
示例用法:do(lambda:print("hello"),5)#Will print "hello" 5 times4
数学
内置数学模块的扩展
数字
isprime(数字)
检查给定的数字是否为素数。
查找时间(最小、最大)
返回范围(最小值、最大值)内的所有值
查找因子(num)
返回给定数字的所有因子的列表,包括1和数字本身。
示例用法:do(lambda:print("hello"),5)#Will print "hello" 5 times5
发现因素(数量)
返回元组列表中给定数字的所有因子,包括1和数字本身。
示例用法:do(lambda:print("hello"),5)#Will print "hello" 5 times6
findintegerroot(num,power=2)
查找整数x,使x**power等于num。如果没有整数根,则返回none。
示例用法:do(lambda:print("hello"),5)#Will print "hello" 5 times7
二维线性方程
中间部分(eq1,eq2)
对于y=mx+c类型的线性方程,需要两个元组形式(m,c)aka(gradient,start)的方程。
返回一个元组,其值(x,y)表示这两个方程相等的笛卡尔坐标。
查找半径(坐标1,坐标2)
需要两个元组形式的位置向量(x,y)。
返回连接它们的线的梯度
二维几何
圆形电度表(半径)
返回给定半径的圆的周长
三角区(a,b,c=无)
需要表示三角形三条边的三个参数,
或需要两个参数表示三角形的基长和高度。
返回三角形的面积。
圆形(半径)
返回给定半径的圆的面积
梯形面积(a,b,d)
期望平行边a和b的长度,以及它们之间的距离d。
返回梯形的面积。
三维几何
球体(半径)
返回给定半径的球体体积
棱柱体(a,b,c=无)
需要表示棱柱体长度、宽度和高度的三个参数,
或需要两个参数,表示底面面积和棱镜高度
返回棱镜的体积。
气缸容积(半径、高度)
返回给定半径和高度的圆柱体体积。
金字塔体积(面积、高度)
返回具有给定区域和高度的棱锥体的体积。
圆锥形(面积、高度)
返回带有gi的圆锥体的体积Ven区域和高度
数据结构
python的其他复杂数据结构。
特雷诺德
方法
node.addValue(self,valueiterable)
将valueiterable的所有值添加到树中,从该节点开始
node.findValue(self,value,returnnode=false)
如果可以在该节点的下方找到值,则返回true;如果无法找到,则返回false。
如果returnnode=true,则返回该值的节点,或不返回该值。
节点.findnode(自身,值)
node.findValue的简写形式(self,value,returnnode=true)
node.getsubnodekeys(self)
返回所有子节点值的列表
字段
节点.子节点
返回{value:subnode}的字典
说明
例如,字符串"test"有4个元素,将被转换为具有4个节点的树:do(lambda:print("hello"),5)#Will print "hello" 5 times8
如果我们现在将字符串"tea"添加到同一棵树上,我们将得到:do(lambda:print("hello"),5)#Will print "hello" 5 times9
第二个节点(值为"e")现在有两个子节点,一个值为"s",另一个值为"a"
值"t"和"e"不会再次添加,因为它们已经在树中。
完整示例do(addFive,[1,2,3],True)#Returns [6,7,8]0
现在我们的树看起来是这样的:do(addFive,[1,2,3],True)#Returns [6,7,8]1
do(addFive,[1,2,3],True)#Returns [6,7,8]2
如果我们在树的节点上调用一个方法,则从该位置调用它。
例如:do(addFive,[1,2,3],True)#Returns [6,7,8]3
现在我们的树看起来是这样的:do(addFive,[1,2,3],True)#Returns [6,7,8]4
如果我们想找到一个节点的所有子节点,例如"he"中的"e"(即"l"、"y"、"r")do(addFive,[1,2,3],True)#Returns [6,7,8]5
如果我们只需要子节点的值,而不处理对象本身呢?do(addFive,[1,2,3],True)#Returns [6,7,8]6
欢迎加入QQ群-->: 979659372
推荐PyPI第三方库