이번 포스팅에서는 파이썬(Python)에서 제공하는 string 모듈에 대해서 알아보고자 한다.
string 모듈이란?
1) string 모듈? 넌 누구야?
(내가 생각하는) string 모듈은 특정 분류에 따른 문자 집합을 제공하는 모듈이다.
2) string이 제공하는 문자 집합
string은 알파벳, 숫자, 특수문자 그리고 공백과 같은 문자 집합을 제공한다. 아래 코드를 보고 그 사용법을 익힐 수 있다.
import string
print('알파벳 관련')
print(string.ascii_letters) ## 알파벳 대문자 소문자 모두
print(string.ascii_lowercase) ## 알파벳 소문자
print(string.ascii_uppercase) ## 알파벳 대문자
print()
print('숫자')
print(string.digits) ## 숫자 0~9
print(string.hexdigits) ## 16진수
print(string.octdigits) ## 16진수
print()
print('특수문자와 공백')
print(string.punctuation) ## 특수문자
string.whitespace## 공백
3) string은 도대체 왜 쓰나?
string 모듈은 아이디가 정해진 규칙에 맞는지 아닌지 확인하는 데 사용될 수 있다.
만약 아이디 생성 규칙이 알파벳과 숫자로 이루어져야 하고 공백과 특수문자는 들어가면 안 된다고 해보자. 이를 string 모듈을 이용하여 주어진 아이디가 규칙에 맞는지 아닌지 확인할 수 있을 것이다. 아래 코드는 주어진 아이디가 규칙에 맞으면 True 아니면 False를 반환한다.
def check_id(id_str):
check_alphabet = False
check_digit = False
for letter in string.ascii_letters:
if letter in id_str:
check_alphabet = True
for digit in string.digits:
if digit in id_str:
check_digit = True
for punc in string.punctuation:
if punc in id_str:
return False
for whitespace in string.whitespace:
if whitespace in id_str:
return False
if all([check_alphabet, check_digit]):
return True
else:
return False
이제 이 함수가 잘 작동하는지 테스트 해보자.
print(check_id('hello123')) ## 정상
print(check_id('hello 123')) ## 공백이 있으므로 규칙 위배
print(check_id('hello123@')) ## 특수문자가 있으므로 규칙 위배
'프로그래밍 > Python' 카테고리의 다른 글
파이썬(Python) 여러 패키지(Packages, 모듈) 한번에 설치하기 (feat. pip install -r requirements.txt) (0) | 2023.01.13 |
---|---|
파이썬(Python) unittest 모듈에 대해서 알아보자. (0) | 2022.10.23 |
파이썬(Python) fractions 모듈을 이용한 분수 표현, 분수 연산하기(feat. Fraction) (0) | 2022.10.12 |
파이썬(Python) - 딕셔너리의 키가 없는 경우 기본값(디폴트값) 설정하기 (feat. setdefault, defaultdict) (0) | 2022.09.29 |
파이썬(Python) - 예외(Exception) 클래스(Class) 만들기 (0) | 2022.09.28 |
댓글