Presentation is loading. Please wait.

Presentation is loading. Please wait.

- C-style formatting - format() method.  file = open(‘file.txt’, [mode]) ◦ Mode  ‘r’: for reading (default)  ‘w’: for writing (truncate if already.

Similar presentations


Presentation on theme: "- C-style formatting - format() method.  file = open(‘file.txt’, [mode]) ◦ Mode  ‘r’: for reading (default)  ‘w’: for writing (truncate if already."— Presentation transcript:

1 - C-style formatting - format() method

2

3

4

5  file = open(‘file.txt’, [mode]) ◦ Mode  ‘r’: for reading (default)  ‘w’: for writing (truncate if already exists)  ‘a’: for appending  ‘r+’: for reading and writing  ‘w+’: for reading and writing (truncate if already exists)  ‘b’: binary file  ‘U’: universal newlines (‘\n’, ‘\r\n’, ‘\r’ 를 지원 )  all = file.read()  line = file.readline() # return string ending with ‘\n’  line_list = file.readlines() # read all and return list of lines  file.write(string)  file.writelines(line_list)  fd = file.fileno() # retrun integer file descritor

6

7  Computers are byte-oriented ◦ ASCII ◦ 영어를 제외한 대부분의 문자는 multi bytes 로 표현해야  한글 encoding 방식 ◦ EUC-KR: 2-byte 완성형, 2,350 자의 한글 표현 가능 ◦ MS 사의 CP949: 확장 완성형, 11,172 자의 한글 표현 가능 (sorting 에 문제 )  Unicode: 전세계 문자를 동시에 표현하는 단일 코드체계 ◦ 단지 유일하게 표현하는 ‘code point’ 일 뿐 전송 (transfer) 하거나 저장 /transfer 하기 위한 것은 아님  문자의 식별이나 sorting 등 컴퓨터내의 processing 에 이용 ◦ Unicode 의 encoding:  UTF(Unicode Character Set Transformation Format)  UTF-7, UTF-8, UTF-16, UTF-32  ASCII 와 호환 가능한 UTF-8 encoding 이 가장 널리 쓰임

8

9  한글의 저장 방식 ◦ UTF-8: WWW, e-mail, UNIX/Linux, 웹서버, PHP, DB 등에서 이용  영문자는 ASCII 그대로 1 byte 로, 다국어는 2, 3, 4 bytes 로 표현  한글인 경우 3 bytes 로 encoding – 초성, 중성, 종성 ◦ CP949: MS Windows  Conversion unicode utf-8 cp949 s.decode(‘cp949’)s.decode(‘utf-8’) u.encode(‘cp949’) u.encode(‘utf-8’)

10  한글이 있는 source 파일은 encoding 지정해야 ◦ UTF-8 로 지정함이 바람직 (Eclipse 도 UTF-8 로 하자.)  String ◦ Python 2: 8-bit ASCII ◦ Python 3: unicode  한글 다루기 쉽다.  File sysem encoding ◦ Python 2: byte 열로 봐서 그대로 write/read  필요하면 개발자가 바꿔야  string.decode(‘cp949’).encode(‘utf-8’) # cp949  utf-8 ◦ Python 3: OS 에 따라 자동 encoding  utf-8 encoding on Linux/UNIX/MAC  cp949 encoding on Windows  Open 할 때 encoding 을 변경 지정 가능  터미널 (stdin, stdout, stderr) encoding ◦ OS 에 따라 자동 encoding

11  Source encoding 을 utf-8 으로 하자. ( 한글이 source code 에 적힌 경우는 반드시 )  Python 3 쓰면 혼선이 없다.  Python 2 에서는 ? ◦ Windows 환경에서  Eclipse 는 문제 없다. SVN 사용해서 Linux 에 변경없이 사용 가능  IDLE 은 다음 경우에 쓰자  한글없는 경우나  한글이 있는 stand-alone 으로 실행하는 프로그램 (cp949 로 ) ◦ Linux 환경에서  Utf-8 를 쓰니 별 문제 없다. ◦ 한글이 포함되는 string 이라면 unicode 로 decode 해서 처리하게 코드를 작성해야 모든 환경에 문제없다.  Socket 통신에서 utf-8 로 encoding 하자.


Download ppt "- C-style formatting - format() method.  file = open(‘file.txt’, [mode]) ◦ Mode  ‘r’: for reading (default)  ‘w’: for writing (truncate if already."

Similar presentations


Ads by Google