프로그래머스 문제풀이
코드풀이
def solution(s): s = s.split() # 1. 문자 쪼개기 result = [] # 결과값 넣어줄 공간 for i in s: # 쪼갠 문자열의 반복문 호출 concat = [] # 반복문을 돌린 후 넣어줄 리스트 공간 for j in range(len(i)): # 쪼갠 문자열의 홀수, 짝수를 구별하기 위한 반복문 호출 if (j+1)%2 == 0: # 홀짝 점검 시작 concat.append(i[j].lower()) # 짝수일때 소문자 else : concat.append(i[j].upper()) # 그렇지 않을 때(홀수) 대문자 result.append(''.join(concat)) answer = ' '.join(result) # concat에 취합된 문자들을 조인하여 answer 변수에 할당(' '이 사이에 띄어쓰기를 넣어서 원래의 띄어쓰기 구조를 다시 만듦) return answer
- 문제 설명을 읽고 나서의 생각
- 단어를 쪼개야 겠다.
- return 값이 반복적으로 대소문자가 구성되어 있다.(홀짝)
- 각각의 문자열 개체를 쪼개서 확인하는 작업이 필요하다.
- 쪼개진 문자 개체를 조인해줘야겠다.
*설명은 위 코드의 주석으로!
오늘 맞닥뜨린 문제들
1. Dbeaver 비밀번호 오류
- 어제까지만 해도 잘 연결해놓았던게 오늘 Dbeaver를 사용하려니 비밀번호가 맞지않는다고 나와서 구글 서칭을 통해서 계속 시도해 보았으나, 해결이 어려워 mysql과 homebrew를 삭제한 후에 다시 시도해볼 수 있었다. 결과는 성공했고 아래 블로그를 참고하여 확실하진 않겠지만 해결이 되었다. 다음에도 같은 일이 발생한다면 또 찾아봐야할 것 같다... 해결방법을 정확히 알지 못하겠다.
-> Public Key Retrieval is not allowed 에 관한 참고 블로그2. 임시테이블 활용 실패(서브쿼리로 해결)
- WITH 뷰 이름 AS ( ) 를 활용하여 쿼리를 한번 정리하여 임시테이블을 활용하려 했으나 테이블을 찾지 못한다는 에러만 자꾸 나와서 실패함.. 대신 서브쿼리를 활용해서 해결(임시테이블 계속 시도해볼거임 개꿀 기능같은데ㅠㅠ)
-> 방금 튜텨님에게 물어봐서 확인한 결과 임시테이블은 항시 같이 드래그하여 쿼리를 실행시켜주어야 실행이 가능하다고 한다. 전 쿼리만 써놓으면 되는줄 알았네요..(메모메모)3. 미니프로젝트 진행 중에 인사이트를 얻는데 어려움을 겪음
- 금과 원달러의 시세 변동을 확인하여 인사이트를 얻고 싶었는데 처음 겪어보는 느낌이었다. 어디서부터 머리를 써야되는건지... 어떻게 사고를 해야하는 건지... 그러는 와중에 문득 든 생각을 인사이트를 얻을 수 없는 것이 인사이트이지 않을까...?라는 생각이 들었다. 과거의 데이터를 활용해서 시각화 해본 것이기 때문에 그래프에서 차이가 발생하는 지점의 원인을 좀 더 신경써서 봐야할 필요도 있을 것 같았고, 데이터가 너무 단순했었는가에 대한 의문도 들었다. 데이터 분석의 첫 설계에서 잘 계획해야할 것 같은데 사실 또 까보지 않으면 알기 힘든법.. 다음에는 데이터 EDA를 해보는 시간을 갖고 그 경험을 바탕으로 생긴 의문들을 가지고 설계하는 작업이 순서일 것 같다고 생각했다.