정답 코드
def solution(record):
dic = {}
result = []
for com in record:
if com.split(" ")[0] == "Enter" or com.split(" ")[0] == "Change":
dic[com.split(" ")[1]] = com.split(" ")[2]
for com in record:
if com.split(" ")[0] == "Enter":
result.append("{}님이 들어왔습니다.".format(dic[com.split(" ")[1]]))
elif com.split(" ")[0] == "Leave":
result.append("{}님이 나갔습니다.".format(dic[com.split(" ")[1]]))
return result
틀린 코드
class record_class:
def __init__(self, name, com):
self.name = name
self.com = com
def change(self, name, com):
self.name = name
self.com = com
def toString(self):
return self.name + "님이 " + self.com
def solution(record):
record_dic = {}
record_list_dic = {}
result = []
for i in record:
com = i.split(" ")
if com[0] == "Enter":
record_dic[id] = com[2]
result.append(record_class(com[2], "들어왔습니다."))
if id in record_list_dic.keys():
record_list_dic[id].append(len(result) - 1)
else:
record_list_dic[id] = [len(result) - 1]
elif com[0] == "Leave":
record_list_dic[id].append(len(result) - 1)
for i in result:
print(i.toString())
....
지금 보니 딕셔너리로 접근한 것까진 괜찮았는데, 이 이후에 생각이 이상한 길로 빠졌다.
문제를 잘 생각해보면, Change는 그냥 해당 Id 키 값에 name을 변경해주기만 하면 되는건데,,,
나는 어렵게 생각하고, for문을 돌면서 Change가 나왔다면 이전에 추가한 result의 name값을 다 변경해주려고 했다..ㅠㅠ
보통 3개월~4개월, 6개월까지 코테를 잡고 있는다고 하는데,, 난 이제 7개월 차 인데도 부족한 부분이 너무 많은 것 같다..ㅠㅠ
실력이 늘고는 있는걸까,,?
'개발 > Spring' 카테고리의 다른 글
JPA란 (0) | 2021.07.22 |
---|---|
[Spring] MockMvc (0) | 2021.07.20 |
[Spring] Spring MVC 전체 구조 (0) | 2021.06.14 |
[Spring] 빈 생명주기, 빈 스코프 (0) | 2021.05.17 |
[Spring] 컴포넌트 스캔, 의존 관계 자동 주입 (0) | 2021.05.07 |