Python之列表的删除
短信预约 -IT技能 免费直播动态提醒
'''
数据结构之线性结构之列表 : 这里的列表是一种数据存储结构,也即将一块连续的存储空间分配给该变量存储数据.优点在于:查询效率极高,但缺点在于,为保证数据存储的连续性
每当删除中间位置的某一个元素时,后面元素的位置都必须的随之发生改变,因此其删除效率是极低的.由此也导致了另一个问题,也即利用循环结构,
无法彻底删除所有的元素;
for循环结构内部是通过一个迭代器来实现的,为便于理解,我们可以以C中的指针来理解上述问题的出现过程.
假定要求利用for循环结构清空一个列表(具体过程如下) :
第一,会创建一个指针,指向该列表中的第0个元素,然后通过该指针删除指针指向的元素;
第二,由于列表是一种列表数据结构,为保证数据存储的连贯性,删除了第0个元素后,其后的元素都会向前移动;
第三,指针加一,指向下一个元素,也即第一个元素的位置,因此,会跳过第0个元素,删除第一个元素;
第四,如此循环往复,导致总会遗漏一些元素没有被删除;
#注: 当字典作为可迭代对象时,不允许在迭代过程,改变字典的大小;
'''
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341