2017-10-11 6 views
4

아래에서 올바른 줄은 무엇입니까? 이러한 모든 사용 가능한 인코딩을 알고 있습니까?utf16 대 utf-16

with open(filename, 'w', encoding='utf16') as fp: 
with open(filename, 'w', encoding='utf-16') as fp: 
+0

귀하의 질문에 답변 한 경우 제 답변을 정확하게 기재하십시오. 감사! –

답변

3

흥미로운 질문입니다. 검색 중 일부를 수행했는데 여기에서 사용할 수있는 모든 옵션을 찾을 수있는 것처럼 보입니다. https://docs.python.org/3/library/codecs.html#standard-encodings

그래서이 경우 어느 쪽도 아니야! utf_16이어야합니다. 아직도, 파이썬에 대한 나의 경험으로, 당신이 제공 한 인수를 위생적으로 처리하여 관계없이 작동하게되면 놀라지 않을 것입니다. 그리고 링크에서 그들은 그들이하는 것처럼 보입니다! 따라서 utf-16은 유효한 별명이어야합니다.

대문자 만 다르거 나 밑줄 대신 하이픈을 사용하는 맞춤법 대안은 유효한 별칭입니다. 따라서, 예를 들어. 'utf-8'은 'utf_8'코덱의 유효한 별칭입니다.

편집 - 확실히 올바른 링크입니다. 이 문장

에서 그것에 open 링크를 지원하는 인코딩 목록의 코덱 모듈을 참조에 대한 문서가 https://docs.python.org/3.4/library/functions.html#open.

+0

^, 예, 정확히 제가 언급 한 내용입니다. 그걸 꺼내 주셔서 고마워요. –

+1

답이 더 좋다 :) 물론, 우리가 8 ~ 16과 32를 일반화 할 수 있다면 :) –