프로그래머스(파이썬)/LV.1(파이썬)
문자열 다루기 기본→String클래스의 isdigit() + in 연산자★★
나의 풀이 def solution(s): return s.isdigit() and len(s) in (4, 6) 다른 사람의 풀이 def solution(s): if len(s) ==4 or len(s)==6: try: int(s) return True except: return False else: return False ▶ 빌 게이츠임
내적→리스트 곱하기 +zip()★
나의 풀이 def solution(a, b): return sum([x*y for x,y in zip(a,b)]) 다른 사람의 풀이 def solution(a, b): c = [] for i in range(len(a)): c.append(a[i]*b[i]) return sum(c)
수박수박수박수박수박수?→ for문의 i와 if문★
나의 풀이 def solution(n): answer = "" for i in range(1, n+1): if i % 2 ==1: answer+="수" else: answer+="박" return answer 다른 사람의 풀이 def solution(n): return "".join(["수박"[i%2] for i in range(n)]) ▶ 파이썬의 경우 "문자열" 옆에 바로 "인덱스"를 사용할 수 있다. ▶ 문자열 옆에서 바로 문자열 슬라이싱이 가능하다. 보충자료 print("수박"[0]) //수 print("수박"[1]) //박 print("수박"[0:2]) //수박
가운데 글자 가져오기→원리원칙대로★
나의 풀이 def solution(s): if len(s) % 2==1: i=len(s)//2 return s[i] else: i=(len(s)-1)//2 return s[i:i+2] 다른 사람의 풀이 def solution(str): return str[(len(str)-1)//2:len(str)//2+1] ▶ 천재다 천재