0

在我看来,我有两个 django 查询。它们如下:

news = News.objects.all()[:8]
posts = Post.objects.all()[:3]

我需要按以下顺序将这两个查询组合在一起:

[news, post, news, news, news, post, news, post, news, news, news]

我很确定我将不得不使用lambda或做某种count,但在这一点上我有点迷茫。我应该只使用countandappend吗?

4

1 回答 1

3

不。

def selector(seqs, picks):
  iters = [iter(x) for x in seqs]
  for choice in picks:
    yield next(iters[choice])

print list(selector((news, post), (0, 1, 0, 0, 0, 1, 0, 1, 0, 0, 0)))
于 2012-09-28T16:18:47.460 回答