def getDict(file_name):

result = {}

keys = []

values = []

with open(file_name,'r') as f:

stringfile = f.read()

listfile = stringfile.split('\n')

for i in listfile:

k = i[-4:]

v = i[:-5]

if k not in keys:

keys.append(k)             #listfile 안에서 중복되지 않게 연도를 뽑아 keys 내로 더해줌

for i in keys:  #중복되지 않는 각 연도 i에 대해서,

values.clear()

for j in listfile:   #listfile의 각 구성원소에 대해

if (j[-4:])==(i): #listfile 구성원소의 연도가 i와 같으면

values.append(j[:-5]) #영화제목을 values 리스트에 집어넣는다.

result[i] = values #영화제목 집어넣은 values list는 result라는 dictionary의 key : i 에 대해 value가 된다.


return result


print(getDict('data/Movie.txt'))


뒤에 더 있긴 한데 함수 def 잘됐나 보려고 프린트한거고..

data.Movie.txt 파일은 


영화제목,연도4자리 영화제목,연도4자리 영화제목,연도4자리 이렇게 쭉 나열되었고, 연도는 중복되어있음.

csv 파일 바꿔놓은거 같다는 말이 나와서 개행문자로 짤랏더니 잘 짤렸음

근데 저걸 출력하면

연도, 즉 key값들은 제대로 들어갔는데, value값이 어떤 한 영화로만 특정됨. 그래서 출력값이

{'2010' : ['Fatty Joins the Force'], '1999' : ['Fatty Joins the Force'], '2013' : ['Fatty Joins the Force'], '1965' : ['Fatty Joins the Force']....}

이딴식으로나옴..

value값 넣어줄때 뭔가 잘못된거같은데 뭔질모르겠다.. 도움앙망