概述
- 常见的问题
在使用python写循环代码时,经常会遇到这样的问题,那就是作为长度标尺的列表长度一直在变化,比如说在你写一个循环pop列表元素的程序时,这时候必须实时更新列表长度才行,如下。 - 解决办法示例
首先声明,dir_S是一个非空列表。如以下代码所示,在未添加最后一行的情况下,当我想将dir_S中的某些元素剔除时,我遇到了以上的问题,程序报错
而在添加了最后一行之后,问题解决。原因在于最后一行实现了不删除元素时立刻更新列表长度的功能。
length=len(dir_S)
for i in range(0,length):
if i < length:
if os.path.split(dir_S[i])[1] == 'DR8':
dir_S.pop(i)
elif os.path.split(dir_S[i])[1] == 'DR7':
dir_S.pop(i)
elif os.path.split(dir_S[i])[1] == 'DR6':
dir_S.pop(i)
elif os.path.split(dir_S[i])[1] == 'DR5':
dir_S.pop(i)
elif os.path.split(dir_S[i])[1] == 'DR4':
dir_S.pop(i)
elif os.path.split(dir_S[i])[1] == 'DR3':
dir_S.pop(i)
elif os.path.split(dir_S[i])[1] == 'DR2':
dir_S.pop(i)
elif os.path.split(dir_S[i])[1] == 'DR1':
dir_S.pop(i)
####以下是最后一行
else:
length=len(dir_S)
感谢浏览!
最后
以上就是纯真发箍为你收集整理的python写循环程序时,列表长度一直变化怎么办?简单方法示例。的全部内容,希望文章能够帮你解决python写循环程序时,列表长度一直变化怎么办?简单方法示例。所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复