2024-04-23 22:33:58 发布
网友
为什么这段代码在Python解释器运行时不会抛出错误呢。你知道吗
a = ['A', 'B', 'C'] a[20:] = ['D', 'E'] print a
输出是['A', 'B', 'C', 'D', 'E']。我以为Python会在第二条语句中给我一个错误,因为a只有3个元素。这个特性在编码时有什么自然的用途吗?你知道吗
['A', 'B', 'C', 'D', 'E']
a
这就是python的工作原理。在python中,切片不会进行边界检查。它只是扩展你的列表,因为它是一个可变的对象。你知道吗
当您通过切片读取边界外的内容时,这也很有趣:
f = a[20:]
f将是一个空列表。你知道吗
f
这就是python的工作原理。在python中,切片不会进行边界检查。它只是扩展你的列表,因为它是一个可变的对象。你知道吗
当您通过切片读取边界外的内容时,这也很有趣:
f
将是一个空列表。你知道吗相关问题 更多 >
编程相关推荐