ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [python] 입력 출력, 파일 읽고 쓰기
    python/python 공부 2020. 8. 15. 16:07

    1. 입력 출력

    2. 파일 읽고 쓰기


    1. 입력 출력

    사용자에게 내용 입력받기 : input() 사용

    입력받은 내용 출력 : print() 사용

     

    input은 입력되는 모든 것을 문자열로 취급한다.

    ex)

    >>> number = input("숫자를 입력하세요: ")

    숫자를 입력하세요:

     

    3을 입력하면 number에 3이 대입된다.

    print(number) 를 하면 입력 받았던 3이 출력된다.

     

    print문 사용방법

     - 큰 따옴표로 둘러싸인 문자열은 + 연산과 동일하다.

        >>> print("life" "is")

        lifeis

        >>> print("life"+"is")

        lifeis

     

     - 문자열 띄어쓰기는 콤마로 한다.

        >>> print("life","is")

        life is

     

     - 한 줄에 결과값 출력하기, end를 이용해 끝 문자를 지정하면 된다.

        >>> for i in range(5):

        ...     print(i, end=' ')

        ...

        0 1 2 3 4 5

     

    2. 파일 읽고 쓰기

    파일 생성하기 : 파일을 생성하기 위해서는 open() 이라는 파이썬 내장 함수를 사용한다. open 함수는 '파일 이름'과 '파일 열기 모드'를 입력값으로 받고 결과값으로 파일 객체를 돌려준다.

    ex) 파일 객체 = open(파일 이름, 파일 열기 모드)

    f = open("새파일.txt", "w")

    f.close()

     

    파일 열기 모드의 종류는 아래와 같다.

    파일 열기 모드 설명
    r 읽기 모드 - 파일을 읽기만 할 때 사용
    w 쓰기 모드 - 파일에 내용을 쓸 때 사용
    a 추가 모드 - 파일의 마지막에 새로운 내용을 추가할 때 사용

    파일을 쓰기 모드로 열때 해당 파일이 이미 존재할 경우 원래 있던 내용이 모두 사라지고, 해당 파일이 존재하지 않으면 새로운 파일이 생성된다.

    f = open("C:/python/새파일.txt", "w")

    f.close()

     

    위 처럼 경로를 지정해서 원하는 폴더에 넣을 수도 있고 경로를 생략하여 현재 작업중인 폴더에 넣을수도 있다.

    ex)

    f = open("open.txt", "w")
    for i in range(10):
        data = "%d번째 줄입니다.\n" %i
        f.write(data) # write() 를 사용해서 내용을 출력한다.
    f.close()

     

    <새로 생성된 open.txt 파일 내용>

    0번째 줄입니다.
    1번째 줄입니다.
    2번째 줄입니다.
    3번째 줄입니다.
    4번째 줄입니다.
    5번째 줄입니다.
    6번째 줄입니다.
    7번째 줄입니다.
    8번째 줄입니다.
    9번째 줄입니다.

     

    저장된 파일 읽는 방법

     - readline() 함수 이용 : 한 줄을 읽어들인다.

     

    f = open("open.txt", "r")
    while True: # 여러줄을 읽어들이기 위해서 while 문을 이용
        line = f.readline()
            if not line:
            break
        print(line)
    f.close()

     

    결과>

    0번째 줄입니다.
    1번째 줄입니다.
    2번째 줄입니다.
    3번째 줄입니다.
    4번째 줄입니다.
    5번째 줄입니다.
    6번째 줄입니다.
    7번째 줄입니다.
    8번째 줄입니다.
    9번째 줄입니다.

     

     

     

     - readlines() 함수 이용 : 파일의 모든 라인을 읽어서 각각의 줄을 요소로 갖는 리스트로 리턴한다.

    f = open("open.txt", "r")
    lines = f.readlines()
    for line in lines:
        print(line)
    f.close()

     

    lines는 ["0번째 줄입니다.", "1번째 줄입니다.", ..., "9번째 줄입니다."] 라는 리스트가 된다.

     

     - read() 함수 이용 : 파일의 내용 전체를 문자열로 리턴한다.

    f = open("open.txt", "r")
    data = f.read()
    print(data)
    f.close()

     

    파일에 새로운 내용 추가 : 기존 내용에 새로운 내용을 추가하고 싶다면 파일을 추가 모드(a)로 열면 된다.

    f = open("open.txt", "a")
    for i in range(10, 20):
        f.write("%i번째 내용으로 추가됨\n"%i)
    f.close()

     

    결과>

    0번째 줄입니다.
    1번째 줄입니다.
    2번째 줄입니다.
    3번째 줄입니다.
    4번째 줄입니다.
    5번째 줄입니다.
    6번째 줄입니다.
    7번째 줄입니다.
    8번째 줄입니다.
    9번째 줄입니다.
    10번째 내용으로 추가됨
    11번째 내용으로 추가됨
    12번째 내용으로 추가됨
    13번째 내용으로 추가됨
    14번째 내용으로 추가됨
    15번째 내용으로 추가됨
    16번째 내용으로 추가됨
    17번째 내용으로 추가됨
    18번째 내용으로 추가됨
    19번째 내용으로 추가됨

     

    파일을 자동으로 열고 닫게 하기 : with 문 사용

    with open("open.txt", "w") as f:

        f.write("Life is")

     

    이렇게 with문을 사용 하면 with를 벗어나는 순간 열린 파일 객체 f가 자동으로 close된다.

     

     

     

     

     

    내용 출처 : Do it! 점프 투 파이썬

    'python > python 공부' 카테고리의 다른 글

    [python] 함수  (0) 2020.07.26
    [python] 제어문 - 반복문  (0) 2020.07.18
    [python] 제어문 - if문  (0) 2020.07.12
    [python] 파이썬 자료형 4  (0) 2020.07.05
    [python] 파이썬 자료형 3  (0) 2020.07.01

    댓글

Designed by Tistory.