목록파이썬 (33)
IT 세계의 후아
※ str.endswith(값, start, end) str의 start, end 위치 내에서 '값'으로 해당 문자열이 끝나는지 확인 # 프로그래머스 접미사 확인 def solution(my_string, is_suffix): return 1 if f in [s[i:] for i in range(len(s))] else 0 # 다른 사람 풀이 return int(my_string.endswith(is_suffix))
※ 리스트.sort()리스트 고유의 메서드, 기본 오름차순 정렬 # sort(reverse=False)가 default* 따로 리스트를 return하는 게 x, 해당 리스트를 정렬만 함≫ 리스트.sort(reverse=True) # 내림차순 정렬≫ sorted(리스트) # 정렬된 리스트 return# 프로그래머스 lv0 접미사 배열def solution(s): return sorted([s[i:] for i in range(len(s))]) # 프로그래머스 lv0 중앙값 구하기# [7, 0, 5] => 5def solution(array): return sorted(array)[len(array)//2] ≫ 리스트.sort(key=함수) / sorted(리스트, key=함수)함수 기..
※ 리스트.reverse() 해당 리스트 역순으로 수정해줄 뿐 None return => list에서만 제공되는 함수!!! a_li = ['a', 'b', 'c', 'd'] b_li = a_li.reverse() print(b_li) # none print(a_li) # ['d', 'c', 'b', 'a'] ※ reversed(리스트/튜플/문자열) 역순으로 된 reversed 객체 return! list(reversed(a_li)) # ['d', 'c', 'b', 'a'] or ''.join(reversed(a_li)) # 'dcba' 처럼 활용가능! https://itholic.github.io/python-reverse-reversed/ ※ 문자열 뒤집기(역순 출력) 문자열은 슬라이싱(인덱스)으로 추..
while문, for문 활용 문제 ㄴwhile문 안에 if-else ㄴfor문 안에 while문 쓰는 방식 기억하기! + if-else 조건 따졌을 때 어떻게 나눌 수 있는지 고민 # 프로그래머스 배열 만들기4 def solution(arr): i = 0 stk = [] while i = arr[i]: stk.pop() stk.append(arr[i]) re..
# tuple 형식으로 return※ product(리스트, repeat=자리수)중복O, 모든 조합from itertools import product # 중복순열''.join(i) for i in list(product('ABC', repeat = 2)) # AA AB AC BA BB BC CA CB CC ※ permutations(리스트, repeat=자리수)중복X, 순서Ofrom itertools import permutations # 순열permutations('ABC', 2) # AB AC BA BC CA CB ※ combinations(리스트, repeat=자리수)중복X, 순서Xfrom itertools import combinations # 조합combinati..
※ for N in zip(iterable1, iterable2, ...)내장함수로, iterable 객체 여러개를 받아 tuple로 묶어주는 역할for z in zip("abc", [1,2,3]): print(z)("a", 1)("b", 2)("c", 3) ※ for k,v in dict(zip(리스트1, 리스트2)key: 리스트1, value: 리스트2# 프로그래머스 수 조작하기1# control: 문자열 'wdsaaw...'def solution(n, control): w = control.count('w') s = control.count('s') d = control.count('d') a = control.count('a') r..
a_li = [1,2,3]※ 리스트.append(값)마지막에 값 추가a_li.append(4) # [1,2,3,4] ※ 리스트.insert(인덱스, 값)a_li.insert(1, 5) # [1,5,2,3,4] ※ del 리스트[인덱스]인덱스 위치의 요소 삭제del a_li[2] # [1,5,3,4] ※ 리스트.remove(값)리스트 내의 값 삭제 >> 없으면 ValueErrora_li.remove(5) # [1,3,4]del a_li[a_li.index(3)] # [1,4]# 프로그래머스 마지막 두 원소def solution(li): li.append(li[-1]-li[-2] if li[-1] > li[-2] else 2*li[-1]) return li ※ reduce(함수,..
※ 콜론[:]을 활용한 문자열 인덱싱text = 'abcdef'text[0] = 'a'text[0:2] = 'ab'text[-2:0] = 'ef'text[:-3] = 'abc'text[::2] = 'ace' # 0번째 문자부터 끝까지 2개씩 건너뛰기# 프로그래머스 lv0 코드 처리하기def solution(code): mode = False # 0 ret = "" for i in range(len(code)): if code[i] == "1": # 숫자 1이 아닌 문자열 1이라는 것 놓치지 않기! mode = not mode elif (mode == False and i%2 == 0) or (mode == True and i%2 == ..