문자열 관련 해결방안

SA Jung·2022년 9월 27일
1

Python 함수 정리

목록 보기
2/7

코딩테스트를 준비하면서 기본이 되고, 정답을 얻기위해서 자주 다루는 것은 문자열(String)이다.
문자열을 다루는데 있어서 기본이 되는 문법을 요약하고자 한다.

1) 문자 채우기

1-1. 자릿수에 맞춰 0 채우기

  • 왼쪽으로 채워짐.
string = "1111"
n=6
str(string.zfill(n))

 - 출력 : 001111

1-2. 자릿수에 맞춰 특정문자 채우기 (오른쪽)- .rjust

string = "1111"
n=6
print (string.rjust(n,"#"))

 - 출력 : ##1111

1-3. 자릿수에 맞춰 특정문자 채우기 (왼쪽)- .ljust

string = "1111"
n=6
print (string.ljust(n,"#"))

 - 출력 : 1111##

1-4. 자릿수에 맞춰 특정문자 채우기 (중앙)- .center

string = "1111"
n=6
print (string.center(n,"#"))

 - 출력 : #1111#

2) 특정문자 및 공백 제거하기

  • .strip("문자")로 특정 문자를 제거할 수 있는데, .strip()으로 문자를 입력하지 않을시 공백을 제거해준다.

2-1. 양쪽 특정 문자 제거 .strip()

string = "abcdea"
string = string.strip("a")
print(string)
# bcde

2-2. 왼쪽 특정 문자 제거 .lstrip()

string = "abcdef"
string = string.lstrip("a")
print(string)
# bcdef

2-3. 오른쪽 특정 문자 제거 .rstrip()

string = "abcdef"
string = string.rstrip("f")
print(string)
# abcde

3) 문자 정렬하기

3-1. list 정렬하기(1) -> list.sort()

  • list.sort()는 변수에 넣지 않고, 단독으로 쓰이며 "리스트형의 메소드"이며 리스트 원본값을 직접 수정한다.
  • 주의할 점은 list.sort()를 변수에 담으면 None값이 반환된다.
# list 정렬 - 오름차순(default)
a= [2,3,1,8,6,7,5,4]
a.sort()
print (a)
# [1, 2, 3, 4, 5, 6, 7, 8]

# list 정렬 - 내림차순(reverse = True)
a= [2,3,1,8,6,7,5,4]
a.sort(reverse = True)
print(a)
# [8, 7, 6, 5, 4, 3, 2, 1]

3-2 list 정렬하기(2) -> soretd(list)

  • 위와 다르게 "내장 함수"이며 리스트 원본 값은 그대로이고 정렬 값을 반환하므로 변수에 담아주어야 한다.
# list 정렬 - 오름차순(default)
a= [2,3,1,8,6,7,5,4]
a = sorted(a)
print (a)
# [1, 2, 3, 4, 5, 6, 7, 8]

# list 정렬 - 내림차순(reverse = True)
a = [2,3,1,8,6,7,5,4]
a = sorted(a,reverse = True)
print(a)
# [8, 7, 6, 5, 4, 3, 2, 1]

4) 영어 판별하기

4-1 영어 대/소문자 판별하기

# 소문자일 경우
a = "a"
if a.isupper():
    print (f"대문자입니다")
else:
    print ("소문자입니다.")
# a는 소문자입니다.

if a.islower():
    print (f"{a}는 소문자입니다")
else:
    print(f"{a}는 대문자입니다.")
# a는 소문자입니다.
# 대문자일 경우
A = "A"
if A.isupper():
    print(f"{A}는 대문자입니다")
else:
    print(f"{A}는 소문자입니다.")
# A는 대문자입니다

if A.islower():
    print(f"{A}는 소문자입니다")
else:
    print(f"{A}는 대문자입니다.")
# A는 대문자입니다

4-2 영어 대 <-> 소문자 변경

# 영어 대문자 일괄변경
a = "AbCdEf"
print (a.upper())

# 영어 소문자 일괄변경
a = "AbCdEf"
print(a.lower())

5) 숫자 판별하기

5-1 정수와 지수로 구성된 문자열을 판별

# 숫자일 경우 True
print ("4".isdigit())
# True

# 숫자가 아닐 경우 False
print ("a".isdigit())
# False

6) 아스키코드(ASCII)

6-1 문자열 -> 아스키코드 ord()

# 문자열 -> 아스키코드 변환
# ord(char)형태
ord('a')
 # 97

ord('z')
 # 122

6-2 아스키코드 -> 문자열 chr()

# 아스키코드 -> 문자열 변환
# chr(int)형태
chr(65)
 # A

chr(90)
 # Z
profile
Tomorrow will be better than yesterday :)

0개의 댓글