#python #anaconda #jupyter-notebook #visual-code #html #css #javascript #http

제목웹파이선프로그래밍 00분반 2022년 1학기 기말고사 문제 7번 질문2024-07-08 19:46
작성자

문제 7번에서 removeCustomerByName 함수를 만들었는데 왜 안돌아가는지 모르겠습니다.


 def removeCustomerByName(self,name):

         exist = False

        for items in self.q.values():

            if items == name:

                exist = True

         if exist == False:

             return -1

         else:

                 for k,v in self.q.items():

                     if v == name:

                         del(self.q[k])

                return self.q


제가 짠 코드인데 논리상 문제가 없어보이는데 원인을 모르겠습니다.


오류를 조금 알아보았는데 논리상 문제는 없는데 for문 사용시 self.q의 딕셔너리가 변화해서 오류가 생겼다고 오류가 생기는거 같은데...그러면 안되는 이유를 잘 모르겠습니다..value error 써서 알아보았는데 RuntimeError: dictionary changed size during iteration이렇게 뜹니다..


이게 왜 그런지 잘 모르겠습니다.


댓글