브렌쏭의 Veritas_Garage

[우리FISA] Standard Input/Output, stdio 본문

[Project_하다]/[Project_공부]

[우리FISA] Standard Input/Output, stdio

브렌쏭 2024. 7. 15. 18:08

표준 입출력 (Standard Input/Output)

  • print()
    • 출력
    • 기본적으로 출력 후 줄바꿈을 한다.
  • input()
    • 입력
    • 사용자로부터 입력을 받는다.

파일 입출력

# 파일 쓰기
with open('file.txt', 'w') as f:
    f.write('Hello, Python!')

# 파일 읽기
with open('file.txt', 'r') as f:
    print(f.read())
# 파일에 추가로 작성
with open('file.txt', 'a') as f:
    f.write('\nHello, Python!')

with

  • 파일을 열고 닫는 것을 자동으로 처리해준다.
  • 파일을 열면 반드시 닫아야 하는데, with를 사용하면 자동으로 닫아준다.
  • with 블록을 벗어나면 파일이 자동으로 닫힌다.

파일 모드

  • r : 읽기 모드
    • r+ : 읽기/쓰기 모드
    • rb : 바이너리 읽기 모드
    • rb+ : 바이너리 읽기/쓰기 모드
    • rt : 텍스트 읽기 모드
    • rt+ : 텍스트 읽기/쓰기 모드
  • w : 쓰기 모드
    • w+ : 읽기/쓰기 모드
    • wb : 바이너리 쓰기 모드
    • wb+ : 바이너리 읽기/쓰기 모드
    • wt : 텍스트 쓰기 모드
    • wt+ : 텍스트 읽기/쓰기 모드
  • a : 추가 모드
    • a+ : 읽기/추가 모드
    • ab : 바이너리 추가 모드
    • ab+ : 바이너리 읽기/추가 모드
    • at : 텍스트 추가 모드
    • at+ : 텍스트 읽기/추가 모드
  • x : 쓰기 모드로 파일을 열되, 파일이 이미 존재하면 실패
  • t : 텍스트 모드
  • b : 바이너리 모드

print() 함수에서 파일로 출력하기

with open('file.txt', 'w') as f:
    print('Hello, Python!', file=f)
f = open('file.txt', 'w')
print('Hello, Python!', file=f)
f.close()

flush

  • 버퍼를 비우는 것
  • 버퍼가 가득 차거나 프로그램이 종료될 때 자동으로 비워진다.
  • flush=True로 설정하면 버퍼를 비우지 않고 출력한다.
print('Hello, Python!', flush=True)
# Hello, Python!

flush 옵션에 따라 출력되는 시점이 달라질 수 있다.

print('Hello, Python!', end='', flush=True)

for i in range(10):
    print(i, end='', flush=True)

위 출력은 다음과 같다.

Hello, Python!0123456789

read(), readline(), readlines(), readable()

  • read()
    • 파일 전체를 읽어서 문자열로 반환한다.
    • 파일을 읽을 때 사용한다.
  • readline()
    • 파일의 한 줄을 읽어서 문자열로 반환한다.
    • 파일을 한 줄씩 읽을 때 사용한다.
  • readlines()
    • 파일 전체를 읽어서 리스트로 반환한다.
    • 파일을 한 줄씩 읽을 때 사용한다.
  • readable()
    • 파일이 읽을 수 있는지 확인한다.
    • 읽을 수 있으면 True, 없으면 False를 반환한다.

write(), writelines(), writable(), write_through()

  • write()
    • 문자열을 파일에 쓴다.
    • 파일을 쓸 때 사용한다.
  • writelines()
    • 리스트의 문자열을 파일에 쓴다.
    • 파일을 쓸 때 사용한다.
  • writable()
    • 파일이 쓸 수 있는지 확인한다.
    • 쓸 수 있으면 True, 없으면 False를 반환한다.
  • write_through()
    • 버퍼를 비우고 쓴다.
    • 버퍼를 비우지 않고 쓸 때 사용한다.

'[Project_하다] > [Project_공부]' 카테고리의 다른 글

[우리FISA] NumPy  (0) 2024.07.17
[우리FISA] Python Class  (0) 2024.07.16
[우리FISA] OOP  (0) 2024.07.15
[우리FISA] Exception Handling  (0) 2024.07.15
[우리FISA] Python Modules, Library, Package  (0) 2024.07.15
[BoostCouse] NumPy  (1) 2024.07.14
[우리FISA] 5일차 Functions continue.....  (1) 2024.07.12
Comments