본인 c,c++만 배웠는데 이번학기 대칭키암호론 과제가 파이썬으로 내서

구조는 대충 짯는데 문법이 틀려서 ㅠㅠ


일단 프로그램 목적은

어떤 파일에 영어 문자의 문자열이 들어있는 파일명을 가져다가 빈도 목록이 들어 있는 딕셔너리 반환임.


일단 파일입출력 말고 그냥 문자열로 입출력할때 코드는 이러함


def char_freq(str):

  freq = {}

  for c in str:

    if c in freq:

      freq[c] += 1

    else:

      freq[c] = 1

  return freq

      


print(char_freq("abcdefaaa"))



이걸 이제 함수에 입력받는걸 파일로 하고싶은건데
문법 1도 모르는 내가 짠 코드는 아래와 같음.
어떻게 수정해야 함??



def char_freq_file(file):

    freq = {}

    fp = open(file)

    for c in fp

        if c in fp:

            freq[c] += 1

        else:

            freq[c] = 1

    return freq


f = open("asd.txt", 'w')

f.write("abcdefasfasdfasdf")



print(char_freq_file(f))

f.close()