개발자 뺚
[Python] 문자열(String) 메서드 본문
string.upper()
string.lower()
# example
string = "Hello World!"
print(string.lower())
print(string.upper())
# terminal
hello world!
HELLO WORLD!
upeer() 메서드는 문자열에 포함된 영어 소문자를 모두 대문자로 바꾸는 메서드이다. lower() 메서드는 반대로 문자열에 포함된 영어 대문자를 모두 소문자로 바꾸는 메서드이다.
string.lstrip()
string.rstrip()
# example
string = " WoW "
print(string.lstrip() + ".")
print(string.rstrip() + ".")
# terminal
WoW .
WoW.
lstrip() 메서드는 문자열 좌측 공백을 제거해주는 메서드이다. rstrip() 메서드는 문자열 우측 공백을 제거해주는 메서드이다.
string.isalnum()
# example
print("Hi".isalnum())
print("77".isalnum())
print("Hi77".isalnum())
print("!!".isalnum())
print(" ".isalnum())
print("\n".isalnum())
# terminal
True
True
True
False
False
False
isalnum() 메서드는 문자열이 알파벳과 숫자로만 구성되어 있는지 확인하는 메서드이다. 알파벳과 문자로만 구성되었다면 True를 반환하고 만약 특수문자, 공백, 이스케이프 문자 등이 포함되어 있다면 False를 반환한다.
string.isalpha()
# example
print("Hi".isalpha())
print("77".isalpha())
print("!!".isalpha())
print(" ".isalpha())
print("\n".isalpha())
# terminal
True
False
False
False
False
isalnum() 메서드는 문자열이 알파벳으로만 구성되어 있는지 확인하는 메서드이다. 알파벳으로만 구성되었다면 True를 반환하고 만약 숫자, 특수문자, 공백, 이스케이프 문자 등이 포함되어 있다면 False를 반환한다.
string.isidentifier()
# example
print("image_0".isidentifier())
print("1-_-1".isidentifier())
# terminal
True
False
isidentifier() 메서드는 해당 문자열이 식별자로 사용될 수 있는지 확인하는 메서드이다. 식별자는 다른 변수나 함수 등과 구별하기 위해 사용되는 변수 또는 함수의 이름이다. 해당 문자열이 식별자로 사용될 수 있으면 True를 반환하고 사용할 수 없으면 False를 반환한다.
string.isdecimal()
string.isdigit()
string.isnumeric()
# example
print("11".isdecimal())
print("1.1".isdecimal())
print("0".isdecimal())
print("-11".isdecimal())
print("\u0031".isdecimal())
print("\u00B2".isdecimal())
print('½'.isdecimal(), end = "\n\n")
print("11".isdigit())
print("1.1".isdigit())
print("0".isdigit())
print("-11".isdigit())
print("\u0031".isdigit())
print("\u00B2".isdigit())
print('½'.isdigit(), end = "\n\n")
print("11".isnumeric())
print("1.1".isnumeric())
print("0".isnumeric())
print("-11".isnumeric())
print("\u0031".isnumeric())
print("\u00B2".isnumeric())
print('½'.isnumeric())
# "\u0031" : unicode of "1"
# "\u00B2" : unicode of power of "2" = ²
# terminal
True
False
True
False
True
False
False
True
False
True
False
True
True
False
True
False
True
False
True
True
True
코드가 좀 길지만 세 메서드의 비교를 위해 한번에 가져왔다. 세 메서드는 모두 문자열이 숫자인지 확인하는 메서드이다. 하지만 숫자로 인식하는 범위가 조금씩 다르다. 먼저 소수와 음수를 숫자로 인식하지 못하는 것은 소수를 표현하기 위해 문자열에 소수점(.)이 포함되고 음수를 표현하기 위해 문자열에 뺄셈 연산자(-)가 포함되기 때문에 이를 문자로 인식하여 숫자로 인식하지 못하는 것이다. isdecimal() 함수는 숫자 0~9와 숫자 0~9의 유니코드를 숫자로 인식한다. isdigit() 함수는 숫자 0~9와 숫자 0~9의 유니코드, 지수를 숫자로 인식한다. isnumeric() 함수는 숫자 0~9와 숫자 0~9의 유니코드, 지수, 분수를 숫자로 인식한다.
string.isspace()
# example
print(" A ".isspace())
print(" ".isspace())
print("\t".isspace())
print("\n".isspace())
# terminal
False
True
True
True
isspace() 메서드는 문자열이 공백으로만 구성되어 있는지 확인하는 메서드이다. 탭이나 줄바꿈도 공백으로 인정된다.
string.isupper()
string.islower()
# example
print("HELLO WORLD!".isupper())
print("Hello World!".isupper())
print("hello world!".islower())
print("Hello World!".islower())
# terminal
True
False
True
False
isupeer() 메서드는 문자열에 포함된 영어 알파벳들이 모두 대문자인지 확인하는 메서드이다. lower() 메서드는 반대로 문자열에 포함된 영어 알파벳들이 모두 소문자인지 확인하 메서드이다.
string.find()
string.rfind()
# example
string = "WoWoWoW!"
print(string.find("Wo"))
print(string.rfind("Wo"))
# terminal
0
4
위의 두 메서드는 모두 문자열 내에서 매개변수로 주어진 문자열을 찾아 위치를 반환하는 메서드이다. 만약 매개변수를 전달하지 않는다면 오류가 발생한다. find() 메서드는 문자열의 왼쪽부터 찾고 rfind() 메서드는 문자열의 오른쪽부터 찾는다. 가장 처음 찾은 문자열의 위치를 반환하고 만약 주어진 문자열이 포함되어 있지 않다면 -1을 반환한다.
string1 in string2
# example
print("ell" in "Hello!")
print("elo" in "Hello!")
# terminal
True
False
in 구문은 여러 용도로 사용되는 구문이다. in 구문 앞뒤에 문자열이 오게 되면 string1 문자열이 string2 문자열 내부에 포함되어 있는지 확인한다. 만약 포함되어 있다면 True를 반환하고 포함되어 있지 않다면 false를 반환한다.
string1.split(string2)
# example
print("10 20 30".split(" "))
print("10, 20, 30".split(", "))
# terminal
['10', '20', '30']
['10', '20', '30']
split() 메서드는 string1을 string2마다 나누어 리스트로 만들어 반환하는 메서드이다. 만약 매개변수를 전달하지 않거나 ""을 전달한다면 오류가 발생한다.
'Information > Python' 카테고리의 다른 글
[Python] 리스트(List) 메서드 (0) | 2023.08.30 |
---|---|
[Python] pandas 모듈(Module) 자료구조(Data Structure) (0) | 2023.08.29 |
[Python] random 모듈(Module) (6) | 2023.07.16 |
[Python] datetime 모듈(Module) (0) | 2023.07.16 |
[Python] print() 함수 (4) | 2023.07.15 |