2013-02-26 4 views
0

Я не знаю, был ли задан этот вопрос где-то, но я его не нашел.Предельная длина списка python

Я добавляю элементы в список.

thr_core0 +=[fpid[thread]] 

это происходит периодически .. В момент времени 0:

thr_core0 [9886, 9890]

В time1:

thr_core0 [9886, 9890, 9886, 9890]

Можно ли ограничить длину списка до 2.

Я знаю, что можно использовать deque. но возможно ли также использовать lists.

с помощью deque, мы делаем это так:

thr_core0 += [deque([0]*2,maxlen=2)] 

Эти ключевые слова я искал на Google: limitlistlengthpython

+0

Технически да - но вы не хотите - это то, что 'deque' для ... –

+0

Ваше использование' deque' кажется неправильным. Вероятно, вы хотите: 'thr_core0 = deque ([0] * 2, maxlen = 2); thr_core2.append (9886); ... ' – jfs

ответ

2

Это не красиво, но вы можете нарезать его:

thr_core0 = (thr_core0 + [fpid[thread]])[:2] 

Это будет всегда быть в курсе, что у the_core0 не более чем у tw o элементов.

+0

Хорошо. В этом случае я использую deque. Но для этого ответа нужна отметка. – rnish

+0

@rnish: сохранить последние два значения вместо первых двух значений: 'L = L [-2:]' – jfs

Смежные вопросы