편집 기록

편집 기록
  • 프로필 nowp님의 편집
    날짜2023.06.05

    파이썬 코드 질문 (파일 입출력 문제, count = [0] * 10이 어떤의미인지 모르겠습니다.)


    문제는 1에서 10사이의 랜덤한 30개 가진 count.in 파일을 random모듈을 사용하여 생성하시오. 그리고 이 파일을 읽어서 1에서 10까지 정수의 출현 횟수를 같이 count.out 파일에 출력하시오.

    //count.in

    import random
    
    fout = open('count.in', 'w')
    
    for _ in range(30):
        num = random.randint(1, 10)
        fout.write('{:3d} '.format(num))
    
    fout.close()
    

    //count.out

    fin = open('count.in', 'r')
    fout = open('count.out', 'w')
    
    N = fin.readline().rstrip().split()
    
    for idx, value in enumerate(N):
        N[idx] = int(N[idx])
    
    count = [0] * 10
    for value in N:
        count[value - 1] += 1
    
    for idx, value in enumerate(count):
        fout.write('{:3d}: {:4d}\n'.format(idx + 1, value))
    
    fin.close()
    fout.close()
    

    제가 코드를 이렇게 구글링 하면서 만들긴했습니다.

    근데 제 질문은 count.out 코드에서 count = [0] * 10이 어떤의미인지 모르겠습니다. count.out 코드가 계산되는 과정도 같이 설명해주시면 감사하겠습니다

  • 프로필 정석준님의 편집
    날짜2023.06.04

    파이썬 코드 질문 (파일 입출력 문제)


    문제는 1에서 10사이의 랜덤한 30개 가진 count.in 파일을 random모듈을 사용하여 생성하시오. 그리고 이 파일을 읽어서 1에서 10까지 정수의 출현 횟수를 같이 count.out 파일에 출력하시오. //count.in import random

    fout = open('count.in', 'w')

    for _ in range(30): num = random.randint(1, 10) fout.write('{:3d} '.format(num))

    fout.close()

    //count.out fin = open('count.in', 'r') fout = open('count.out', 'w')

    N = fin.readline().rstrip().split()

    for idx, value in enumerate(N): N[idx] = int(N[idx])

    count = [0] * 10 for value in N: count[value - 1] += 1

    for idx, value in enumerate(count): fout.write('{:3d}: {:4d}\n'.format(idx + 1, value))

    fin.close() fout.close()

    //제가 코드를 이렇게 구글링 하면서 만들긴했습니다. 근데 제 질문은 count.out 코드에서 count = [0] * 10이 어떤의미인지 모르겠습니다. count.out 코드가 계산되는 과정도 같이 설명해주시면 감사하겠습니다