인사말
안녕하세요~! 월요일이에요
컨디션 난조로 많이 힘들었던 월요일이었어요
빈혈끼가 많이 돌아서 화면 보기가 어려운 날이었답니다 🥲
그래도 할 수 있는 건 다 했으니, 만족스러워요!
다들 몸 따듯하게 하시고, 빈혈 조심하세요~!
오늘도 파이팅입니다 😉
오늘의 일정 | |
오전(09:00 ~ 13:00) | 09:00~09:30 코드 카타 2문제 09:50~10:00 팀 오전 회의 09:30~12:00 프로그래머스 4문제 12:00~13:00 GitHub에 commit 하기 |
오후(14:00 ~ 18:00) | 14:00~17:00 파이썬 기본 이론 공부_숫자형 17:00~18:00 베이직반 수업 |
저녁(19:00 ~ 21:00) | 19:00~21:00 파이썬 기본 이론 공부_문자열 자료형 |
요약
- 코드 카타 3문제
- 문자열로 변환
- n번째 원소부터
- 프로그래머스 4문제
- 잘라서 배열로 저장하기
- 공 던지기 https://bmk0703.tistory.com/120
- 문자열 계산하기 https://bmk0703.tistory.com/121
- 영어가 싫어요
- 파이썬 기본 이론 공부
- 파이썬 프로그래밍의 기초, 자료형_숫자형 https://bmk0703.tistory.com/122
- 파이썬 프로그래밍의 기초, 자료형_문자열 자료형 https://bmk0703.tistory.com/123
- 베이직반 수업
오전(09:00 ~ 13:00)
1. 코드 카타 2문제
1.2. 문자열로 변환
def solution(n):
return str(n)
🤔 문제 풀이
- 아주 간단한 타입 변환 문제였어요
- 문자열로 변환하고 싶을 때 str()을 쓴다는 걸 다시 확인할 수 있었던 문제였어요
1.2. n번째 원소부터
def solution(num_list, n):
return num_list[n-1::]
🤔 문제 풀이
- 슬라이싱[start:end:step]을 이용해서 푼 문제였어요
- return num_list[n-1::]
- 문제를 봤을 때 [2, 1, 6]이었는데 세 번째 원소가 [6]이라고 하더라고요
- 그래서 파이썬은 자릿수가 0부터 시작하기 때문에 -1을 해주었어요
2. 프로그래머스 4문제
2.1. 잘라서 배열로 저장하기
def solution(my_str, n):
answer = []
for i in range(0, len(my_str), n):
answer.append(str(my_str[i:i+n]))
return answer
🤔 문제 풀이
- for i in range(0, len(my_str), n):
- n씩 잘라서 answer에 넣어줄 거기 때문에 step을 n으로 잡았어요
- 0~len(my_str) 길이만큼을 범위를 잡아줄게요
- answer.append(str(my_str[i:i+n]))
- my_str[i:i+n]
- my_str를 i부터 i+n까지 슬라이싱 해줄게요
- 이게 저희가 구하고자 하는 결괏값이에요
- my_str를 i부터 i+n까지 슬라이싱 해줄게요
- str(my_str[i:i+n])
- 슬라이싱 한 결괏값을 문자열화 해줘요
- append 함수를 쓸 거기 때문에 타입 변환했어요
- 슬라이싱 한 결괏값을 문자열화 해줘요
- answer.append(str(my_str[i:i+n]))
- answer에 append 해주면 문제 해결!
- my_str[i:i+n]
제가 생각한 대로 잘 되고 있는지 중간에 print() 함수를 섞어가면서 결괏값을 봤어요
다행히 잘 들어갔더라구요 🤭
2.2. 공 던지기
# 인덱스 번호 알아내기 문제
def solution(numbers, k):
answer = numbers[2*(k-1) % len(numbers)]
return answer
https://bmk0703.tistory.com/120
🤔 문제 풀이
- answer = numbers[2*(k-1) % len(numbers)]
- 2칸씩 이동할 거니까 2를 곱해줘요
- 인덱스는 0번째부터 카운팅을 하기 때문에 k-1을 해주었어요
- 그리고 k-1이 의미하는 것은 우리가 찾고자 하는 결괏값을 위해서 "공을 던져주는 사람"을 의미해요
- 2*(k-1)이 numbers의 길이를 넘어갈 수 없기 때문에 나머지(%) 연산자를 써주었어요
- 2*(k-1)은 공이 움직인 횟수를 뜻하게 되고,
- 이것을 len(numbers)로 나누어준다면, k번째로 공을 던지는 사람의 번호를 구할 수 있어요
2.3. 문자열 계산하기
def solution(my_string):
return eval(my_string)
https://bmk0703.tistory.com/121
🤔 문제 풀이
- 파이썬에는 문자열을 그대로 매개변수로 받아서 계산하는 내장 함수가 있어요
- eval()이라는 함수를 알게 된 문제였어요
띠용..????? 😳
2.4. 영어가 싫어요
def solution(numbers):
answer = 0
eng_num = {"zero":"0", "one":"1", "two":"2", "three":"3", "four":"4",
"five":"5", "six":"6", "seven":"7", "eight":"8", "nine":"9"}
for i in eng_num.keys():
numbers = numbers.replace(i,eng_num[i])
return int(numbers)
🤔 문제 풀이
- 문제를 보자마자 딕셔너리를 생각했어요
- eng_num = {"zero":"0", "one":"1", "two":"2", "three":"3", "four":"4",
"five":"5", "six":"6", "seven":"7", "eight":"8", "nine":"9"}- 딕셔너리는 key와 value의 형태로 있잖아요? 짝을 지어줬어요
- eng_num = {"zero":"0", "one":"1", "two":"2", "three":"3", "four":"4",
- for i in eng_num.keys():
numbers = numbers.replace(i,eng_num[i])- eng_num에 있는 keys를 i에 넣어줄게요
- 그리고 i에 있는 것을 eng_num[i]의 value 값으로 replace 해줘요
- return int(numbers)
- 원하는 결괏값은 int형이기 때문에 형변환 해주고 return 해주면 문제 해결!
오후(14:00 ~ 18:00)
3. 파이썬 기본 이론 공부
3.1. 파이썬 프로그래밍의 기초, 자료형_숫자형 https://bmk0703.tistory.com/122
4. 베이직반 수업
저녁(19:00 ~ 21:00)
3. 파이썬 기본 이론 공부
3.2. 파이썬 프로그래밍의 기초, 자료형_문자열 자료형 https://bmk0703.tistory.com/123
→ 슬라이싱까지
마무리
오늘 "공 던지기"라는 문제에 멘탈이 털린 날이었어요
이게,, 쉽지가 않네요,,
알고리즘 문제를 풀어도 풀어도 사고회로가 여기에 알맞게 굴러가질 않아요
튜터님께 힌트를 얻을 수 있어서 다행이었어요 🥲
빈혈 때문에 컴퓨터 화면이 잘 안 보이지만,
평소처럼 잘 해낸 제 자신에게 무한한 박수를 치고 싶어요 👏🏻👏🏻
오늘도 수고 많으셨어요. 따뜻한 이불속에서 몸을 녹이시며 푹 쉬시길 바라요
감사합니다 :)
'내일배움캠프 TIL' 카테고리의 다른 글
[TIL] 내일배움캠프 본캠프 30일차_코드 카타, 파이썬 기본 이론 공부, 베이직반 (0) | 2025.01.07 |
---|---|
[TIL] 내일배움캠프 본캠프 28일차_코드 카타, 프로그래머스, 파이썬 기본 이론 공부, 장고 강의 (1) | 2025.01.03 |
[TIL] 내일배움캠프 본캠프 27일차_코드 카타, 프로그래머스, 파이썬 기본 이론 공부 (2) | 2025.01.02 |
[TIL] 내일배움캠프 본캠프 26일차_코드 카타, 프로그래머스, 마크다운, github 협업하기 (0) | 2024.12.31 |
[TIL] 내일배움캠프 본캠프 25일차_코드 카타, 비지도학습, 프로그래머스 (0) | 2024.12.30 |