파일 쓰기(write)
파이썬은 데이터를 파일에 쓰기(write)하는 기능을 제공하여 다양한 형식의 데이터를 저장하고 관리할 수 있습니다.
파일 쓰기는 프로그램의 실행 결과를 기록하거나 데이터를 영구적으로 저장하는 데 유용합니다.
이번 블로그에서는 파이썬 파일 쓰기에 대해 상세히 알아보고,
`open()` 함수와 함께 사용되는 파일 모드,
`write()` 메서드를 통해 데이터를 파일에 저장하는 방법을 설명하겠습니다.
1. 파일 쓰기를 위한 `open()` 함수
`open()` 함수는 파일을 열 때 사용되며, 파일의 경로와 파일 모드를 인자로 받습니다.
파일 모드는 파일을 열 때 어떤 용도로 사용할 것인지를 지정하는데 사용됩니다.
파일 모드의 주요 종류
- 'w'
- 쓰기 모드(write mode).
- 파일이 이미 존재하면 덮어쓰기를 하며, 파일이 존재하지 않으면 새로 생성합니다.
- 'a'
- 추가 모드(append mode).
- 파일이 이미 존재하면 파일 끝에 데이터를 추가하며, 파일이 존재하지 않으면 새로 생성합니다.
- 'x'
- 생성 모드(exclusive creation mode).
- 파일이 존재하지 않을 때만 파일을 생성하고, 이미 존재하는 경우 오류가 발생합니다.
- 't'
- 텍스트 모드(text mode).
- 기본값으로, 텍스트 데이터를 다루는데 사용됩니다.
- 'b'
- 이진 모드(binary mode).
- 이진 데이터(이미지, 동영상 등)를 다루는데 사용됩니다.
# 파일 쓰기를 위해 파일을 열기
file = open("example.txt", "w")
# 파일 작업 수행
# 파일 닫기
file.close()
2. `write()` 메서드로 파일에 데이터 쓰기
`write()` 메서드는 파일 객체를 통해 파일에 데이터를 쓰는데 사용됩니다.
`write()` 메서드를 호출할 때, 문자열 형식의 데이터를 인자로 전달하여 파일에 쓸 수 있습니다.
file = open("example.txt", "w")
file.write("Hello, World!\n")
file.write("This is a sample text.\n")
file.close()
3. `with` 문과 파일 자동 닫기
파일 작업이 끝나면 파일을 명시적으로 닫아주어야 합니다.
하지만 `with` 문을 사용하면 파일을 열고 작업이 끝나면 자동으로 파일을 닫아줍니다.
with open("example.txt", "w") as file:
file.write("Hello, World!\n")
file.write("This is a sample text.\n")
4. 줄 바꿈 문자로(`\n`)로 데이터 구분하기
`write()` 메서드를 사용하여 데이터를 파일에 쓸 때, 줄 바꿈 문자(\n)를 활용하여 줄을 바꿀 수 있습니다.
with open("example.txt", "w") as file:
file.write("Line 1\n")
file.write("Line 2\n")
file.write("Line 3\n")
5. Google Colab에서 파일 쓰기를 하면 문제점
Google Colab에서 할당받은 가상머신(개발환경)의 하드디스크에서 파일을 쓰고, 파일을 읽는 기능을 수행합니다.
노트북을 열때마다 연결을 해야되는데 끊어지면 새로운 가상머신을 할당받는데,
그 전에 작성한 파일들이 연결할때매다 새로운 가상머신을 할당받기 때문에 파일이 남아있지않습니다.
Google Colab과 연결이 끊어진 후 재연결(가상머신 재할당)을 하면,
가상 머신의 리소스 (RAM, HDD, CPU, ...)들은 초기화 됩니다.
저장된 파일들도 모두 삭제됩니다.
그래서 파일을 개인 Google 드라이브에 저장하고 읽은 방법이 제공합니다.
다음에는 Google 드라이브에 저장하고 읽은 방법을 작성해 보겠습니다.
이번 블로그에서는 파이썬 파일 쓰기에 대해 알아보았습니다.
`open()` 함수를 사용하여 파일을 열고, `write()` 메서드를 사용하여 데이터를 파일에 쓸 수 있습니다.
파일 모드를 적절히 선택하여 파일을 쓰기 모드('w')로 열거나 추가 모드('a')로 열 수 있습니다.
또한 with 문을 사용하여 파일 작업이 끝난 후 자동으로 파일을 닫아주는 방법을 배웠습니다.
잘못된 정보는 댓글로 알려주시면 감사하겠습니다.
'Python' 카테고리의 다른 글
Python - 25. Colab 가상머신에서 구글 드라이브 연결(Mount) (0) | 2023.07.27 |
---|---|
Python - 24. 파이썬에서 파일 읽기(read) (0) | 2023.07.26 |
Python - 22. 파이썬 오류 처리(Error Handling) (0) | 2023.07.24 |
Python - 21. 파이썬 상속(Inheritance) (0) | 2023.07.23 |
Python - 20. 파이썬의 매직 메서드(Magic Method) (0) | 2023.07.22 |