오늘은 프로그래머스에서 1단계 레벨 예제 10문제를 풀었다. 예제를 통해 배운 문법들을 정리하려 한다.
문자열체크함수
.isalpha() -> 문자열이 문자인지 아닌지 True, False로 return
.isdigit() -> 문자열이 숫자인지 아닌지 True, False로 return
.lower() -> 소문자로 바꿔주는 함수
.upper() -> 대문자로 바꿔주는 함수
.title() -> 단어 첫글자마다 대문자로 바꿔주는 함수
ex> hello world! -> Hello World!
.capitalize() -> 문자열의 첫글자는 대문자로, 나머지는 소문자로 바꿔주는 함수
range(a, b, c) -> c는 숫자 사이의 거리를 의미
ex)
range(1, 10, 3)
1부터 3씩 추가되어 10-1 범위까지의 숫자를 나타내는 함수 -> [1, 4, 7]
range(20, 10, -2)
-> [20, 18, 16, 14, 12]
리스트 오름차순 정렬
.sort()
리스트 내림차순 정렬
.sort(reverse=True)
enumerate
리스트가 있는 경우 순서와 리스트의 값을 전달하는 기능. 순서가 있는 자료형(리스트, 튜플, 문자열)을 입력받아 인덱스 값을 포함하는 enumerate 객체를 리턴. 보통 for문과 함께 자주 사용.
for i, name in enumerate(['sam', 'peter', 'sally', 'erin']):
print(i, name)
위 코드를 출력하면
0 sam
1 peter
2 sally
3 erin
과 같이 출력된다. 객체가 현재 어느 위치에 있는지 알려주는 인덱스 값이 필요할때 사용한다.
collections 모듈
collections.Counter() 의 결과값은 딕셔너리 형태로 출력. 요소의 개수가 많은 것부터 출력.
리스트를 입력했을 때
import collections
li = ['aa', 'cc', 'dd', 'aa', 'bb', 'ee']
print(collections.Counter(li))
위 코드를 실행하면
Counter({'aa': 2, 'cc': 1, 'dd': 1, 'bb': 1, 'ee': 1})
이렇게 출력된다.
딕셔너리를 입력했을 때
collections.Counter({'가':3, '나':2, '다':4})
를 실행하면
Counter({'다':4, '가':3, '나':2})
가 나온다.
문자열을 입력해도 {문자:개수}의 딕셔너리 형태로 출력된다.
max() -> 반복가능한 객체의 가장 큰 요소값 리턴
min() -> 반복가능한 객체의 가장 작은 요소값 리턴
sum() -> 반복가능한 객체의 요소값의 합.