>>> a=[45,67,89,90,234,67,78123131,4645645,1231231]
>>> b=["qweqw","qeqeqe","sd","fsdf"]
我想把b 列表的对应字符 插入到 a 列表的每隔2个字段插入一个
最后形成新的列表结果如下c=[45,67,"qweqw",89,90,"qeqeqe",234,67,"sd",78123131,4645645,"fsdf",1231231]
如何实现?
>>> a=[45,67,89,90,234,67,78123131,4645645,1231231]
>>> b=["qweqw","qeqeqe","sd","fsdf"]
我想把b 列表的对应字符 插入到 a 列表的每隔2个字段插入一个
最后形成新的列表结果如下c=[45,67,"qweqw",89,90,"qeqeqe",234,67,"sd",78123131,4645645,"fsdf",1231231]
如何实现?
c = [a[i-i//3] if i%3!=2 else b[i//3] for i in range(len(a)+len(a)//2)]
逻辑:
1、结果列表c的长度是len(a)+len(a)//2。
2、当结果列表的索引值模3余2(需要插入的位置)的时候,取b[i//3](第i//3个插入位置)的值赋给c[i]。
3、其他情况,取a[i-i//3)](当前索引值与已经插入数据的位置个数的差值)的值赋给c[i]。
2 回答5.1k 阅读✓ 已解决
2 回答1.1k 阅读✓ 已解决
4 回答1.4k 阅读✓ 已解决
3 回答1.3k 阅读✓ 已解决
3 回答1.2k 阅读✓ 已解决
1 回答1.7k 阅读✓ 已解决
1 回答1.2k 阅读✓ 已解决