[TIL] 파이썬 문법 기초_화요일

유진·2022년 11월 8일
0

TIL Today I Learned

목록 보기
7/116
post-thumbnail

2022.11.08.(화)

TIL Today I Learned


Good: 강의를 듣고 스스로 문제 풀이한 것이다.

Bad: 집중을 더 하면 알고 있는 문제를 틀리지 않을 것이다.


▶ 웹 개발 종합반에서 들었던 것이라 이해가 더 빨리 되었다. 여러모로 재미있다. ✍️ Q. 백준 단계별 풀어보기를 하면서 오답 노트를 만들어보고자 한다. 류OO 튜터님과 상담을 했는데 전문가도 머리에서 바로 꺼내서 쓰는 게 어렵기 때문에 원하는 것을 글로 써보고 실행한다고 했다. 마치 ✍️ Q. 백준 단계별처럼 말이다. 무슨 말인지 와닿아서 더 적극적으로 활용할 것이다.

▶ 2주 차 새로운 팀이 생성되었다. 연령대가 비슷해서 말이 잘 통한다. 항상 팀장과 팀명 고르는데 간단하다. 팀장은 사다리 타기로 하O님이 되었다. 팀명은 6조이기 때문에 핫식스이다. 불타는 6조!!! 이번 팀 프로젝트도 화이팅! 더 열심히 참가할 수 있도록 공부도 많이 해야겠다.

▶ 어제보다 오늘 더 성장했다고 느낀 점이 있다. else 뒤에 매개변수를 붙이지 않는 것을 기억하고 그 와 관련하여 한 번도 틀리지 않았다는 점이다. 사소한 것이라도 만족한다.


* 1-4강 문자열 다루기 퀴즈

✍️ Q. 문자열의 앞의 반만 출력하기

▶ 틀린 코드)

text = 'sparta'
result = text[:3]
print(text)

▶ 옳은 코드)

text = 'sparta'
result = text[:3]
print(result)

print(text)가 아닌 (result)이다. 이것은 집중하면 틀리지 않는 문제이다.


✍️ Q. 전화번호의 지역번호 출력하기 phone = "02-123-1234"
▶ 옳은 코드)

phone = '02-123-1234'
result = phone.split('-')[0]
print(result)

한 번에 완료함.


* 1-5강 리스트와 딕셔너리 퀴즈
✍️ Q. 딕셔너리에서 원하는 정보를 찾아보기- smith의 science 점수 찾기

▶ 틀린 코드)

people = [
    {'name': 'bob', 'age': 20, 'score':{'math':90,'science':70}},
    {'name': 'carry', 'age': 38, 'score':{'math':40,'science':72}},
    {'name': 'smith', 'age': 28, 'score':{'math':80,'science':90}},
    {'name': 'john', 'age': 34, 'score':{'math':75,'science':100}}
]

print(people[2]['science'])

▶ 옳은 코드)

people = [
    {'name': 'bob', 'age': 20, 'score':{'math':90,'science':70}},
    {'name': 'carry', 'age': 38, 'score':{'math':40,'science':72}},
    {'name': 'smith', 'age': 28, 'score':{'math':80,'science':90}},
    {'name': 'john', 'age': 34, 'score':{'math':75,'science':100}}
]

print(people[2]['score']['science'])

2번째 이름에 과학인 것 같아서 값을 넣었다. 틀려서 봤더니 점수 안에 수학이랑 과학이랑 나뉜다. 정답은 사람들 안에 2번째에 점수에 과학이다.


* 1-8강 반복문 연습문제-num_list = [1, 2, 3, 6, 3, 2, 4, 5, 6, 2, 4]

✍️ Q. 리스트에서 짝수만 출력하는 함수 만들기

▶ 틀린 코드)

num_list = [1, 2, 3, 6, 3, 2, 4, 5, 6, 2, 4]
]
if num_list % 2 = 0:
    print("짝수입니다.")
else:
    print("홀수입니다.")

▶ 옳은 코드)

num_list = [1, 2, 3, 6, 3, 2, 4, 5, 6, 2, 4]

for num in num_list:
    if num % 2 == 0:
        print(num)

두 번째 대괄호가 뜬금없이 있어 지워져야 함.
for 문 안에 if, else 가 있어야 함.
% 2 == 0 잘 생각했지만, 등호를 2개 넣어야 함.
print 안에 어떤 것을 할 것인지 적어주기.


✍️ Q. 리스트에서 짝수의 개수를 출력하기

▶ 틀린 코드)

num_list = [1, 2, 3, 6, 3, 2, 4, 5, 6, 2, 4]

for i, num in enumerate(num_list):
    if num % 2 == 0:
        print(i, num)

▶ 옳은 코드)

num_list = [1, 2, 3, 6, 3, 2, 4, 5, 6, 2, 4]

count = 0

for num in num_list:
    if num % 2 == 0:
        count += 1

print(count)

틀린 코드는 숫자가 몇 번째에 속하는지 알려주는 것이다.


✍️ Q. 리스트 안에 있는 모든 숫자 더하기

▶ 틀린 코드)

num_list = [1, 2, 3, 6, 3, 2, 4, 5, 6, 2, 4]

for num in num_list:
    if num([0]+[1]+[2]+[3]+[])

print(num)

▶ 옳은 코드)

num_list = [1, 2, 3, 6, 3, 2, 4, 5, 6, 2, 4]

sum = 0
for num in num_list:
    sum += num

print(sum)

하나하나 다 더하는 건 아니겠지 싶어서 정답을 봄. sum을 이용하다니..최고


✍️ Q. 리스트 안에 있는 자연수 중 가장 큰 숫자 구하기

▶ 옳은 코드)

num_list = [1, 2, 3, 6, 3, 2, 4, 5, 6, 2, 4]

max = 0
for num in num_list:
    if max < num:
        max = num

print(max)

어떻게 해야 하는지 감이 잡히지 않았다. 정답을 보았다. 신기하고 재미있는 방법이었다. 창의적이라고 생각했다. 다음에는 감을 잡고 스스로 답을 찾아내 보고 싶다. 창의적인 생각을 가진 개발자가 되고 싶다.


* 1-9강 함수 퀴즈

✍️ Q. 주민등록번호를 입력받아 성별을 출력하는 함수 만들기

▶ 틀린 코드)

def check_gender(pin):
    check_gender.split('-')[1][0]
    if check_gender == int("1") | ("3")
        print('남자입니다.')
    else
        print('여자입니다.')
        
check_gender('150101-1012345')
check_gender('150101-2012345')
check_gender('150101-4012345')

▶ 옳은 코드)

def check_gender(pin):
    num = pin.split('-')[1][:1]
    if int(num) % 2 == 0:
        print('Female')
    else:
        print('male')

check_gender('150101-1012345')
check_gender('150101-2012345')
check_gender('150101-4012345')

틀린 코드를 보고 욕이 나올지도 모른다. 근본 없이 썼기 때문이다. 구글링을도 하지 않았다. 하지만 정답을 보고 배운다면 내일은 더 성장해 있을 것이다. 문제를 풀면서 어제의 나보다 성장했다고 느꼈으니까 말이다.


[ 2주차 계획 ]

- 스파르타코딩클럽 계획 (수정사항이 있음.)


✔ 월: javascript 올인원
✔ 화: 파이썬 문법 기초
□ 수: 파이썬 문법 기초/ 자료구조 알고리즘
□ 목: 자료구조 알고리즘
□ 금: 자료구조 알고리즘

- 나의 계획
✔ 파이썬 문법 기초 완강하기 (시간표대로)
□ 오답노트 다시 보기

profile
긍정 🍋🌻

0개의 댓글