我需要将列表分为带有平均值的嵌套列表。
a =[ 0.6140781, 0.61407846, 0.6930427, 0.6930429, 0.7213439, 0.72134393, 0.7333274, 0.73332757]
列表的平均值是0.05515
如果两个元素之间的差异不超过0.5515,我需要加入列表中的元素,如果列表中的下一个元素超过0.05515,则在python中形成另一个列表
所需的输出:
output : [[0.6140781, 0.61407846],[0.6930427, 0.69460429],[0.7213439, 0.72334393], [0.7333274, 0.73532757]]
任何的意见都将会有帮助!
问题来源:stackoverflow
由于列表已排序,因此,如果当前元素大于目标值,则可以遍历,将新列表添加到输出中,然后将当前元素添加到最近添加的列表中。
您提供的平均值与您的输出没有任何关系,因为0.7213439-0.69460429
不大于0.05515,0.7333274-0.72334393
也都不是,所以我改用0.01。
a = [0.6140781, 0.61407846, 0.6930427, 0.6930429, 0.7213439, 0.72134393, 0.7333274, 0.73332757]
output = [a[:1]]
for i in range(1, len(a)):
if a[i] - a[i-1] > 0.01:
output.append([])
output[-1].append(a[i])
print(output)
回答来源:stackoverflow
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。