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

제목Lecture12-2_File2 예제 'sum_number_pairs'함수 질문2022-04-22 20:15
작성자

 

def sum_number_pairs(input_file, output_filename):

    output_file = open(output_filename, 'w')

    for number_pair in input_file:

        number_pair = number_pair.strip()

        operands = number_pair.split()

        total = float(operands[0]) +float(operands[1])

        new_line = '{0} {1}\n'.format(number_pair, total)

        output_file.write(new_line)

output_file.close()

 

>>> import total

>>> total.sum_number_pairs(open('number_pair.txt','r'),'out.txt')


위 함수에서 

마지막 행이 잘 이해가 가지 않아서 질문 드립니다. 

함수의 왼쪽 파라메터인 input_file이 open함수를 사용하여 'number_pair.txt'라는 파일명과 읽기 모드를 갖춘 새로운 객체가 된다는 점은 이해가 됩니다. 


하지만 오른쪽 파라메터인 output_filename이 open함수 없이 어떻게 'out.txt'라는 새로운 파일을 생성하게 되었는지가 잘 이해가 되지 않습니다. 

1. 오른쪽 파라메터는 output_filename으로, open함수를 통해 output_filename이라는 파일명과 쓰기 모드를 가지고 이는 output_file로 반환된다.

2. output_file.write(new_line)을 통해 새로 생성된 파일에 결과값이 입력되며 함수가 마무리 되는데, 

3. 마지막 total.sum_number_pairs(open('number_pair.txt','r'), 'out.txt')에서 'output_file'이라는 파일 객체가 어떤 과정을 통해 'out.txt'라는 새로운 파일을 생성하게 된건지에 궁금합니다. 

참고로 제가 이해한 바로는 open함수는 새로운 파일을 생성하는 함수로, 파일객체 = open(생성하고자 하는 파일 이름, 파일 열기 모드) 라고 알고 있습니다. 

댓글