gpt4 book ai didi

python - 按索引列表进行字符串切片

转载 作者:行者123 更新时间:2023-12-04 11:58:19 24 4
gpt4 key购买 nike

我有一个列表中存在的长度列表,例如:

a = [1, 3, 4]
此外,我有一个字符串,它的长度正好是 a 的数字之和,这里是 8,看起来像这样:
s = "01100110"
我在 a 的长度上循环,每次,我都希望在 a 中准确地存在接下来的 n 位。
所以在这里,这将是三个运行,给我“0”、“110”和“0110”。
有没有一个非常聪明的想法来高效地做到这一点,例如通过切片?
我脑子里有一些奇怪的复杂方法,但正在寻找更有效的方法。
我想出了一些解决方案:
counter_index = 0
counter_sum = 0

for i in range(len(a)):
res = s[counter_sum:counter_sum+a[counter_index]
counter_sum += a[counter_index]
counter_index += 1
print(res)

最佳答案

这种方法基本上每次切片时都会更新字符串,因此我们可以通过简单地使用 a 中的值来获取下一个值。直接作为索引值,而不是将其添加到现有位置值。

a = [1, 3, 4]
s = "01100110"
st = s
i = 0
while i < len(a):
print(st[:a[i]])
st = st[a[i]:]
i+=1

输出
0
110
0110

关于python - 按索引列表进行字符串切片,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69358414/

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