본문 바로가기

패스트캠퍼스_컴공전공필수+인공지능/0원 챌린지

3/02(목) 파일 입/출력

읽기/쓰기와 인코딩

  • 파일 처리
    • 파이썬에서 운영체제에 파일처리를 요청하면 -> 운영체제가 요청한 업무를 수행하고 그 결과를 돌려줌.
    • 파일 열기 => file = open()
    • 파일 일기/쓰기 => file.read() / file.write()
    • 파일 닫기 => file.close()
  • open() 함수
    • open() 함수의 매개변수에 대해 알아보아야 한다.
    • open(parameter1, parameter2, parameter3) 형식이다.
    • 여기서 첫번째 매개변수는 파일의 경로이다. (ex) ” C:/Users/Home-PC/Documents/test.txt”)
    • 두번째 매개변수는 파일 열기 방식이다. (읽기모드 w , 쓰기모드 r 등..)
    • 세번째 매개변수는 인코딩 방식이다.
  • 파일 열기 방식?
    • 두번째 매개변수인 파일 열기 방식에 대해 자세히 알아보자.
    • 'r' : 읽기용
    • 'w' : 쓰기용
      • (주의: 이미 같은 경로에 파일이 있을 경우에는 파일 내용을 지워버린다!!)
    • 'a' :쓰기용으로 열기. 단, 'w'와는 달리 이미 같은 경로에 파일이 존재할 경우 내용 덧붙이기
    • 'x' : 배타적 생성모드. 파일이 이미 존재하면 예외를 일으킴.
    • 'rb' : 바이트 어레이 읽기 (바이트 단위)
    • 'wb' : 바이트 어레이 쓰기 (바이트 단위)
  • 인코딩?
    • 아스키 코드 ( ASCII)
      • 미국 정보 교환 표준 부호
      • ASCII 는 7비트만을 이용하여 음이 아닌수 (0~127)에 문자를 할당
        • ex) '=' 를 61에 , 'A' 를 65에, 'a'를 97에 할당
      • 52개의 알파벳 대소문자, 10개의 숫자, 32개의 특수문자, 하나의 공백문자, 33개의 출력 불가능한 제어문자로 128개의 문자를 표현.
    • ISO/IEC 8859-1
      • 8비트를 사용하여 256(28)개의 문자를 표현
    • ISO/IEC 8859-N
      • 중앙 유럽어, 남유럽어, 북유럽어, 아랍어 등을 지원
    • DBCS(Double-Byte Character Set)
      • 2바이트(16비트)를 활용해서 문자 집합을 구성하는 방법.
      • 최대 65,536(2^16)개의 문자를 할당할 수 있으며, 한글(총11,172자), 중국과 일본의 문자를 컴퓨터로 표현 가능. 
      • DBCS는 ASCII와의 호환을 유지하기 위해 최상위 비트가 0이면 ASCII, 1이면 DBCS로 인식
      • 한글 문자 집합 표준으로는 KS X 1001, EUC-KR, CP949 등이 있음.
    • 유니코드
      • 문자 집합 하나로 모든 문자를 표현할 수 있게 하는 것이 목적 
      • 초기에는 전세계의 언어별 문자들을 2바이트 안에서 영역을 나눠 할당
      • 누락된 문자와 기호를 계속 추가하다 보니 2 바이트를 넘어서게 됨
    • UTF(Unicode Transformation Format)
      • 유니코드 변환 인코딩 형식
      • UTF-8은 코드포인트의 크기에 따라 1바이트에서부터 4바이트까지 가변폭으로 인코딩하므로 1 바이트로 표현 가능한 U+0000(십진수 0)부터 U+007F(십진수 127)까지는 ASCII와 완벽하게 호환
      • UTF-8 인코딩 방식으로 저장된 문서는 유니코드를 알지 못하는 시스템에서도 사용 가능.
      • UTF-8 외에도 UTF-7, UTF-16, UTF-32 인코딩 등이 있음.
  •  

* 필수 삽입 링크 : http://bit.ly/3Y34pE0

 

패스트캠퍼스 [직장인 실무교육]

프로그래밍, 영상편집, UX/UI, 마케팅, 데이터 분석, 엑셀강의, The RED, 국비지원, 기업교육, 서비스 제공.

fastcampus.co.kr

<사진 2장>

 

 

 

> 본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성되었습니다.