У меня есть список с фиксированным размером 10, который я стану процентом процессора моего компьютера с интервалом в 2 секунды. Что я пытаюсь сделать это, удаление 1-й элемент сдвига каждого элемента в предыдущий индекс списка записи 11-го значения в последнем индексе спискаПеремещающиеся элементы в фиксированном размере
Ниже вы можете увидеть мой код. Я сделал некоторую отладку, но сейчас я запутался. Как я могу это исправить?
__author__ = 'tim'
#-*- coding: utf-8 -*-
import psutil, os, time
def getCpuRate():
myList = [None]*10
myString=" "
myString2 = " "
i = 0
j = 0
while True:
if myList[9] is None:
myList[i] = psutil.cpu_percent(interval=2)
myString = myString + (str(myList[i]) + " ")
i = i+1
print i , myString
#time.sleep(3)
else:
while i>0:
myList[j] = myList[j+1]
#print myList[j+1] , myList[j]
for k in range(len(myList)):
myString2 = myString + (str(myList[k]) + "")
print i , j , myString2
j = j+1
i = i-1
if j >= 9:
myList[j] = psutil.cpu_percent(interval=2)
print i , j , myString2
j -= 1
print "a"
getCpuRate()
'''
mySecondList = getCpuRate()
for x in range(len(mySecondList)):
print mySecondList[x]
'''
print "b"
если у вас есть только 10 элементов, где 11-й вариант подходит? –
Я пытаюсь переписать 2-й, 1-й, 3-й и 2-й и так далее. Как только 10-й элемент скопирован на 9-й, мне нужно, чтобы 11-й был написан над 10-м номером –
, это домашнее задание или вы можете просто использовать deque? 'из коллекции import deque deq = deque (maxlen = 10)' –