从两个列表构建新列表,保持顺序相同,尽可能具有相同的表示形式



我有两个列表,ab。我需要使用ab中的元素来构建一个新的列表c

要求:

  1. c具有最大长度n
  2. 我希望ab的代表性尽可能相等
  3. 新列表中的a元素必须位于b元素之前
  4. CCD_ 11和CCD_

例如,如果:

a=['a1','a2','a3']
b=['b1']
n=3

c应为['a1','a2','b1']

我的问题是,"如何在Python中做到这一点?"。

mid定义为中间点(如果n为奇数,则从a获取更多元素(,并从a获取第一个mid元素,从b获取n-mid元素。

import math
mid = min(math.ceil(n/2), len(a))
c = a[:mid] + b[0:(n-mid)]

我添加了min(of math.ceil(n/2) and len(a)),因为a可能没有n/2个元素

最新更新