프로그래밍 언어/Python

Python의 알파벳 범위

Rateye 2022. 1. 17. 11:58
728x90
반응형
질문 : Python의 알파벳 범위

다음과 같이 알파벳 문자 목록을 만드는 대신 :

alpha = ['a', 'b', 'c', 'd'.........'z']

범위 등으로 그룹화 할 수있는 방법이 있습니까? 예를 들어 숫자의 경우 range() 사용하여 그룹화 할 수 있습니다.

range(1, 10)
답변

>>> import string
>>> string.ascii_lowercase
'abcdefghijklmnopqrstuvwxyz'

목록이 정말로 필요한 경우 :

>>> list(string.ascii_lowercase)
['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z']

그리고 range

>>> list(map(chr, range(97, 123))) #or list(map(chr, range(ord('a'), ord('z')+1)))
['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z']

기타 유용한 string 모듈 기능 :

>>> help(string) # on Python 3
....
DATA
    ascii_letters = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
    ascii_lowercase = 'abcdefghijklmnopqrstuvwxyz'
    ascii_uppercase = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
    digits = '0123456789'
    hexdigits = '0123456789abcdefABCDEF'
    octdigits = '01234567'
    printable = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!"#$%&\'()*+,-./:;<=>?@[\\]^_`{|}~ \t\n\r\x0b\x0c'
    punctuation = '!"#$%&\'()*+,-./:;<=>?@[\\]^_`{|}~'
    whitespace = ' \t\n\r\x0b\x0c'
출처 : https://stackoverflow.com/questions/16060899/alphabet-range-in-python
728x90
반응형