알파벳을 줄이자.
방법
import unicodedata
def make_smaller(string):
new_string = ''
for char in string:
if not char.isalpha():
new_string += char
continue
if char == 'i' or char == 'n':
new_string += unicodedata.lookup(f'SUPERSCRIPT LATIN SMALL LETTER {char}')
continue
small_or_capital = 'CAPITAL' if char.isupper() else 'SMALL'
try:
new_string += unicodedata.lookup(f'MODIFIER LETTER {small_or_capital} {char}')
continue
except KeyError:
pass
try:
new_string += unicodedata.lookup(f'MODIFIER LETTER SMALL {char}')
continue
except KeyError:
pass
new_string += char # q と Q は残念ながら対応する文字がない。
return new_string
>>> make_smaller('ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz')
'ᴬᴮᶜᴰᴱᶠᴳᴴᴵᴶᴷᴸᴹᴺᴼᴾQᴿˢᵀᵁⱽᵂˣʸᶻᵃᵇᶜᵈᵉᶠᵍʰⁱʲᵏˡᵐⁿᵒᵖqʳˢᵗᵘᵛʷˣʸᶻ'
>>> make_smaller('Puella Magi Madoka Magica')
'ᴾᵘᵉˡˡᵃ ᴹᵃᵍⁱ ᴹᵃᵈᵒᵏᵃ ᴹᵃᵍⁱᶜᵃ'
Android 등 일부 환경에서는 표시할 수 없으므로 이미지도 올려 둡니다.
참고
import unicodedata
def make_smaller(string):
new_string = ''
for char in string:
if not char.isalpha():
new_string += char
continue
if char == 'i' or char == 'n':
new_string += unicodedata.lookup(f'SUPERSCRIPT LATIN SMALL LETTER {char}')
continue
small_or_capital = 'CAPITAL' if char.isupper() else 'SMALL'
try:
new_string += unicodedata.lookup(f'MODIFIER LETTER {small_or_capital} {char}')
continue
except KeyError:
pass
try:
new_string += unicodedata.lookup(f'MODIFIER LETTER SMALL {char}')
continue
except KeyError:
pass
new_string += char # q と Q は残念ながら対応する文字がない。
return new_string
>>> make_smaller('ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz')
'ᴬᴮᶜᴰᴱᶠᴳᴴᴵᴶᴷᴸᴹᴺᴼᴾQᴿˢᵀᵁⱽᵂˣʸᶻᵃᵇᶜᵈᵉᶠᵍʰⁱʲᵏˡᵐⁿᵒᵖqʳˢᵗᵘᵛʷˣʸᶻ'
>>> make_smaller('Puella Magi Madoka Magica')
'ᴾᵘᵉˡˡᵃ ᴹᵃᵍⁱ ᴹᵃᵈᵒᵏᵃ ᴹᵃᵍⁱᶜᵃ'
Reference
이 문제에 관하여(알파벳을 줄이자.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/QUANON/items/0aa370430fb8d4afe21b텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)