728x90
반응형
python2.xx -> python3.xx로 바뀌면서 바뀐게 많지만 크게 내가 보려고 정리해본다.
1. print 차이
python 2.xx에서는 print "하이하이" 이런 식으로 괄호 없이 출력했는데,
python 3.xx에서는 print("하이하이") 이렇게 괄호를 붙여야만 출력되고 에러가 나지 않는다.
2. 저장 방식
python 2에서는 ASCII 방식으로 저장되었는데(UNICODE방식도 지원은 되었으나 별도 설정 필요)
python 3에서는 기본 저장 방식이 UNICODE이다.
3. string
python 2 에서는 default encoding은 ASCII 이다.
python 3 에서는 모든 string은 unicode이고, 기본 encoding은 utf-8 이다. (그래서 문자열 앞에 u를 붙이거나 unicode 함수를 쓸 필요가 거의 없다..!)
그러나, string을 utf-8이라고 생각하기 보다는 unicode로 생각하는게 좋다.(string.encode 함수 이런게 있으니깐)
기본 encoding 방법은 아래 코드(핵심 : sys.getdefaultencoding())로 확인할 수 있다.
import os, sys
def stringtest(myTag):
print(sys.getdefaultencoding())
try:
tmpStr = str(myTag)
except:
tmpStr = str(myTag)
반응형
'개발자의 개발개발한 하루 > python' 카테고리의 다른 글
python get_text 와 string 차이 (0) | 2022.03.14 |
---|---|
python iframe 렌더링된 페이지 크롤링 하기 (0) | 2022.02.16 |
파이썬 크롤링 User-Agent (0) | 2022.02.09 |
파이썬 정규표현식 re 사용 (0) | 2022.02.09 |
파이썬 크롤링 requests 사용 (0) | 2022.02.08 |
댓글