gpt4 book ai didi

Python最长/平均 'losing'以字符串中的二进制数字序列运行

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:31:18 28 4
gpt4 key购买 nike

我有一系列事件。 1 是好的,0 是坏的。寻找寻找 1 个序列的最大、最小和平均长度的最 Pythonic 方式。

例如:

seq ="001000000000001101001000000000111100001000000011000010000010001100000110011001000010000010101100001110110001000000100100000011000000001000001000101001000000001000010000010011011000100001000011100000001100010001010100100011011000001000000100010110001101100000000100001000001"

最佳答案

一种方法是将字符串拆分为零,删除空字符串,按长度映射,然后排序:

wins = sorted(map(len, filter(None, seq.split("0"))))

在那之后,您的最短连胜将在索引零处,最长的连胜将在最后一个索引处(可通过 -1 访问),并且可以通过应用 sum< 轻松计算平均值 并除以转换为 float 的长度:

print(wins[-1])                     # 4
print(wins[0]) # 1
print(sum(wins) / float(len(wins))) # 1.4339622641509433

Demo.

关于Python最长/平均 'losing'以字符串中的二进制数字序列运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36233715/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com