파이썬에서 문자열에서 ° 문자를 얻는 방법은 무엇입니까?
°(정도) 문자를 문자열로 가져 오려면 어떻게 해야합니까?
이 줄을 소스 맨 위에 놓으십시오.
# -*- coding: utf-8 -*-
편집기에서 다른 인코딩을 사용하는 경우 utf-8로 대체하십시오.
그런 다음 소스에 직접 utf-8 문자를 포함 할 수 있습니다.
이것은 유니 코드 문자를 지정하는 가장 코더 친화적 인 버전입니다.
degree_sign= u'\N{DEGREE SIGN}'
참고 : \N'\ n'개행 문자와의 혼동을 피하기 위해 구조 에서 대문자 N이어야합니다 . 중괄호 안의 문자 이름은 대소 문자를 가리지 않습니다.
유니 코드 인덱스보다 문자 이름 을 기억하는 것이 더 쉽습니다 . 또한 더 읽기 쉽고 ergo 디버깅에 친숙합니다. 문자 대체는 컴파일 시간에 발생합니다. .py[co]파일에는 다음에 대한 상수가 포함됩니다 u'°'.
>>> import dis
>>> c= compile('u"\N{DEGREE SIGN}"', '', 'eval')
>>> dis.dis(c)
1 0 LOAD_CONST 0 (u'\xb0')
3 RETURN_VALUE
>>> c.co_consts
(u'\xb0',)
>>> c= compile('u"\N{DEGREE SIGN}-\N{EMPTY SET}"', '', 'eval')
>>> c.co_consts
(u'\xb0-\u2205',)
>>> print c.co_consts[0]
°-∅
>>> u"\u00b0"
u'\xb0'
>>> print _
°
BTW, 내가 한 것은 Google에서 "유니 코드 학위"를 검색하는 것뿐이었습니다. 이렇게하면 "Degree sign U + 00B0"및 "Degree Celsius U + 2103"의 두 가지 결과가 나타납니다. 실제로는 다릅니다.
>>> u"\u2103"
u'\u2103'
>>> print _
℃
위의 답변은 UTF8 인코딩을 안전하게 사용할 수 있다고 가정합니다. 이것은 특별히 Windows를 대상으로합니다.
Windows 콘솔은 일반적으로 utf-8이 아닌 CP850 인코딩 을 사용하므로 utf8 인코딩 된 소스 파일을 사용하려고 ┬░하면 degree 대신 2 (잘못된) 문자가 표시 됩니다 °.
데모 (Windows 콘솔에서 Python 2.7 사용) :
deg = u'\xb0` # utf code for degree
print deg.encode('utf8')
효과적으로 출력 ┬░합니다.
수정 : 올바른 인코딩을 강제하거나 유니 코드를 사용하는 것이 좋습니다.
local_encoding = 'cp850' # adapt for other encodings
deg = u'\xb0'.encode(local_encoding)
print deg
또는 인코딩을 명시 적으로 정의하는 소스 파일을 사용하는 경우 :
# -*- coding: utf-8 -*-
local_encoding = 'cp850' # adapt for other encodings
print " The current temperature in the country/city you've entered is " + temp_in_county_or_city + "°C.".decode('utf8').encode(local_encoding)
\xb0 (in a string);파이썬을 사용 하면 자동으로 변환됩니다.
You can also use chr(176) to print the degree sign. Here is an example using python 3.6.5 interactive shell:
참고URL : https://stackoverflow.com/questions/3215168/how-to-get-character-in-a-string-in-python
'Program Club' 카테고리의 다른 글
| 원격 저장소에 변경 사항을 푸시 할 때이 Git 경고 메시지는 무엇입니까? (0) | 2020.12.14 |
|---|---|
| LPARAM 및 WPARAM의 정의는 무엇입니까? (0) | 2020.12.14 |
| jQuery Sortable-여러 목록 항목 선택 및 드래그 (0) | 2020.12.14 |
| VB msgbox ()에서 \ n 새 줄을 사용하는 방법…? (0) | 2020.12.14 |
| JavaScript와 Python의 세미콜론의 차이점은 무엇입니까? (0) | 2020.12.14 |
