2017-11-18 4 views
0

메신저, 대기열 대기열을 업데이트하지만 메신저 큐에서 늘파이썬 큐 구현

def enQueue(toDo,myQueue): 
    myQueue += [toDo] 
    return myQueue 

def deQueue(myQueue): 
    if myQueue != []: 
     return myQueue[1:] 

def makeQueue(): 
    return[] 


def main() 

    football = event("10-10-2019","12:00","pitch") 
    enQueue(football, getdone) 
    print(getdone) 
    deQueue(getdone) 
    print(getdone) 

모두 인쇄 문이 동일한 출력

+0

코드에서 이러한 기능을 어떻게 사용하고 있는지 보여줄 수 있습니까? – Gnudiff

+0

지금 방금 업데이트했습니다. – eire

답변

0

myQueue += [toDo]을하기 때문에 줄 큐를 업데이트하는 이유에 comfused 즉석에서 수행되면 함수 호출 후에 해당 연산의 효과가 지속됩니다.

deQueue 호출을 수행 한 후에 사용자가 목록으로 표시 한 queue이 업데이트되지 않았습니다.


대기열에서 전달한 대기열을 변경하거나 새 대기열을 반환하도록 결정해야합니다. 당신이 현재 위치에서 접근을 원하는 경우에

, appendpop(0)를 사용하고 (pop(0)은 O 당신이 목록 대기열을 나타냅니다 (N)이라고하지만 주) None을 반환합니다.

반대쪽 캠프에서는 목록을 추가하거나 슬라이스하여 반환 값을 다른 이름으로 지정하기 만하면됩니다.

+0

어떻게하면 deQueue를 제 위치에서 수행 할 수 있습니까? – eire

+0

코드는 명령형을 사용하는 프로젝트를 구성하므로 추가 할 수 없습니다. – eire

+0

@eire 결과를 무시하기 때문에 "대기열을 반환하지"않습니다. 명령형을 사용해야하는 경우 myqueue.pop (0) – Gnudiff