Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Python中计算2个元素之间的间隔_Python_List - Fatal编程技术网

如何在Python中计算2个元素之间的间隔

如何在Python中计算2个元素之间的间隔,python,list,Python,List,在Python中,我有如下列表: [nan, nan, 0, 0, nan, 0, 0, nan, 0, nan, 0, nan, nan, nan] [nan, nan, 0, 0, 1, 0, 0, 1, 0, 1, 0, nan, nan, nan] 我想计算0之间的间隔,或者我想将其转换为以下内容: [nan, nan, 0, 0, nan, 0, 0, nan, 0, nan, 0, nan, nan, nan] [nan, nan, 0, 0, 1, 0, 0, 1, 0, 1

在Python中,我有如下列表:

[nan, nan, 0, 0, nan, 0, 0, nan, 0, nan, 0, nan, nan, nan]
[nan, nan, 0, 0, 1, 0, 0, 1, 0, 1, 0, nan, nan, nan]
我想计算0之间的间隔,或者我想将其转换为以下内容:

[nan, nan, 0, 0, nan, 0, 0, nan, 0, nan, 0, nan, nan, nan]
[nan, nan, 0, 0, 1, 0, 0, 1, 0, 1, 0, nan, nan, nan]
平均间隔为1。
有没有合适的方法来执行此操作?

这里有一个快速脚本,我希望它能满足您的要求

nan = "nan"
list = [nan, nan, 0, 0, nan, 0, 0, nan, 0, nan, 0, nan, nan, nan]
occurances = list.count(0)
counter = 0
after1 = False
newlist = []
for I in list:
    if I == 0:
        counter += 1

        after1 = True
    elif after1 == True and counter < occurances:
        I = 1
    else:
        after1 = False
    newlist.append(I)
print(newlist)

你说你想数一数间隔;如果您有
[nan,0,nan,nan,0]
,会发生什么?应该是
2
而不是
1
?您使用的是numpy吗?什么是
nan
?@Alex几乎可以肯定numpy.@roganjosh会假设,但OP有
列表
标记欢迎来到StackOverflow。请按照您创建此帐户时的建议,阅读并遵循帮助文档中的发布指南,在这里申请。StackOverflow不是设计、编码、研究或教程资源。然而,若你们遵循你们在网上找到的任何资源,进行诚实的编码尝试,并遇到问题,你们将有一个很好的例子发布。