2012-09-18 40 views
0

我有如下Django的列表:hotess1是一個數據庫結果集。如何返回一個列表的只有少數值,而不是返回所有的值

for hotel in hotels1: 
      if models.CalendarDay.objects.filter(hotel=hotel, date=date).count() == 0: 
       similar_venues.append(hotel) 

列表大小是動態的,但我只想返回前三個值

我可以如下操作:

for hotel in hotels: 
     if models.CalendarDay.objects.filter(hotel=hotel, date=date).count() == 0: 
      similar_venues.append(hotel) 
      counter += 1 
      if counter == 3: break 

,但我想這樣做的更好的辦法..任何幫助

回答

1

您可以使用切片運算符:my_list[:3]會返回一個列表方含的my_list前三值。

(除非有少於三個值,在這種情況下,你得到的一切回)。

相關問題