因此,我只是遇到了我觉得很奇怪的Python功能,并希望对此进行一些澄清。
以下数组操作在一定程度上是有意义的:
p = [1,2,3]
p[3:] = [4]
p = [1,2,3,4]
我想这实际上只是将这个值附加到末尾,对吗?
为什么我可以这样做?
p[20:22] = [5,6]
p = [1,2,3,4,5,6]
更是如此:
p[20:100] = [7,8]
p = [1,2,3,4,5,6,7,8]
这似乎是错误的逻辑。看来这应该引发错误!
有什么解释吗?
-这只是Python所做的奇怪的事情吗?
-有目的吗?
-还是我在想这个错误的方式?
if i > sequence.length(): return sequence.slice(0, sequence.length()) else sequence.slice(0, n)
这与sequence[:n]
在Python中使用完全相同,它为您节省了if语句和2个对的调用length
。