====== Python Unicode ====== * [[http://effbot.org/zone/unicode-objects.htm|Python Unicode Objects]] * [[http://docs.python.org/howto/unicode.html|Python(2.x) Unicode HOWTO]] * [[http://farmdev.com/talks/unicode/|Python unicode completely demystified]] : 쉬운 파이썬 유니코드 설명 * [[http://boodebr.org/main/python/all-about-python-and-unicode|All about python and unicode]] * [[http://packages.python.org/kitchen/unicode-frustrations.html|Python Unicode에 대한 좌절 극복하고 올바르게 사용하기]] * [[http://blog.ianbicking.org/why-python-unicode-sucks.html|Why Python unicode sucks]] * [[http://blog.ludovf.net/python-str-unicode/|str과 unicode]] * [[http://daveagp.wordpress.com/2010/10/26/what-a-character/|Python Console characters]] * http://farmdev.com/talks/unicode/ * [[http://lucumr.pocoo.org/2014/1/5/unicode-in-2-and-3/|More About Unicode in Python 2 and 3 | Armin Ronacher's Thoughts and Writings]] * [[http://soooprmx.com/wp/archives/4912|[Python] 파이썬의 인코딩 | Wireframe]] * [[https://gist.github.com/kimdwkimdw/a2ea13848167984adc8f|Python 한글 다룰 때 주의할 점]] ===== Python 2.x Unicde 정리 ===== * [[python:file|Python File 다루기]] Unicode 파일 관련 내용 참조. ===== Unicode RegEx ===== * 컴파일시에 ''re.UNICODE'' 를 지정하거나, 패턴에 ''(?u)''를 넣는다. ''(?u)pattern'' * 패턴 문자열에 한글 등의 유니코드가 들어갈 경우에 패턴 문자열과 매칭 대상 문자열을 Unicode로 만들 것 # 첫번째 방법 p = re.compile(unicode(r'패턴문자열','utf-8'), re.UNICODE) # 혹은 p = re.compile(u'패턴문자열', 'utf-8'), re.UNICODE) # r''은 RegEx용 escape을 덜해도 되는 문자열방식이다. r''에서는 역슬래시가 필요한 곳에 역슬래시를 한 번만 쓰면 되지만, r''이 아니면 역슬래시를 두 번씩 사용해야 한다. p.match(u'한글 들어간 문자열등등...') ===== 콘솔 Encoding ===== 파이썬에서 콘솔 혹은 파이프로 출력할 경우의 문자셋을 지정하려면 PYTHONIOENCODING 환경 변수를 미리 설정해둬야 한다. export PYTHONIOENCODING="utf_8" 이 외에 명시적으로 인코딩을 지정하는 방법은 [[http://wiki.python.org/moin/PrintFails|Python Print Fails]] 참조.