说明
1、如果在切片时遗漏了任何参数,Python将尝试自动计算。
2、如果检查CPython的源代码,会发现一个函数叫做PySlice_GetIndicesEx(),它计算任何给定参数的切片索引。
它是Python中的逻辑等效代码。
该函数使用Python对象和可选参数进行切片,并返回切片的开始、停止、步长和长度。
实例
defpy_slice_get_indices_ex(obj,start=None,stop=None,step=None): length=len(obj) ifstepisNone: step=1 ifstep==0: raiseException("Stepcannotbezero.") ifstartisNone: start=0ifstep>0elselength-1 else: ifstart<0: start+=length ifstart<0: start=0ifstep>0else-1 ifstart>=length: start=lengthifstep>0elselength-1 ifstopisNone: stop=lengthifstep>0else-1 else: ifstop<0: stop+=length ifstop<0: stop=0ifstep>0else-1 ifstop>=length: stop=lengthifstep>0elselength-1 if(step<0andstop>=start)or(step>0andstart>=stop): slice_length=0 elifstep<0: slice_length=(stop-start+1)/(step)+1 else: slice_length=(stop-start-1)/(step)+1 return(start,stop,step,slice_length)
以上就是python查找缺失参数的方法,希望对大家有所帮助。更多Python学习指路:Python基础教程