是否有布尔函数来测试整数是否是slice对象中包含的索引值?如果没有拆包start,stop,step参数?
3 in slice(1,6,2)
Run Code Online (Sandbox Code Playgroud)
切片不可迭代时会引发错误.
谓词应适用于任意的None start,stop,step的参数.逻辑很简单,但希望有一个内置或包.
逻辑并不像你想象的那么简单,因为为None止步或启动(取决于符号step)这样做是没有意义的,因为你需要指定一个长度.
基本上,您要求的是range对象中的包含,它包含与切片相同的信息,但它是一个有效的序列,并支持快速包含检查.slice有一个indices方法来帮助转换,如果你提供你有兴趣切片的序列的长度:
def in_slice(n, s, length):
return n in range(*s.indices(length))
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
76 次 |
| 最近记录: |