당우 일기장

21.12.13 내배캠 회고록 본문

내일배움캠프

21.12.13 내배캠 회고록

당우 2021. 12. 13. 19:45

9to9 교육을 하는 스파르타 코딩클럽의  내일배움캠프에서 배운 지식이나 경험을 글로 남겨보려고합니다 

글쓰는 재주가 없지만 배운것을 토대로 정리하는 일기장이니 자유롭게 봐주시면 감사하겠습니다

 

아직 내배캠 1일차가 끝나진않았지만 끝날떄까지 기다리다가 쓸려면 귀찮아서 그냥자버릴것같아서

지금까지 공부하며 요약한것을 정리해볼까한다.

 

 오늘 1일차에서 파이썬 기초 문법을 배웠다

 

변수를 선언하는법 부터 자료형 문자열 ,리스트와 딕셔너리 조건문 반복문 과 같은 기본과 함수 나 튜플 집합 같은 것도 완벽하게 이해하지는 못했지만 배우게되었다

 

 1. 파이썬에서는 사칙연산을 할수가있다 

#사칙연산
# + - * /  **제곱 % 나머지

예시 )

a = 1 

b=2 

print(a+b) 

을 하면 3 이 출력이된다

 

2.문자열다루기

 문자열을 배우면서 퀴즈를 내주셨다

퀴즈 지역번호 02만 산출
phone = '02-123-4567'
result = phone.split('-')[0]
print(result)

result = phone[:2]
print(result)

앞에 지역번호만 프린터로 출력하라는 문제였는데

 

두가지 방법이있다 스플릿을 사용하여 - 을 기준으로 구역을 나누고  02 123 4567 로 나뉘는데

각 0 1 2 로 나눠진다 그래서 지역번호인 0 을 선택해서

result = phone.split('-')[0] 하고 프린터를하면 02가 출력이된다

또는 

result = phone[:2] 를 사용하여 앞에서 2번쨰 숫자까지만 불러와 프린터로 출력하면 02가 출력이 됩니다

 

3. 리스트와 딕셔너리

 

리스트는

a_list = [1,3,6,2,7]

이런식으로 리스트를 만들어서

리스트를 수정하거나 추가하거나 오름차순, 내림차순으로 분류하는법을 배웠습니다

그리고 리스트의 개수를 산출하거나 등의 리스트를 활용하는법을 배웠습니다

 

딕셔너리

 a_dict = {'name':'bob','age':27,'friend':['영희','철수']}  #name 키에 bob 값(벨류)  키:벨류

딕셔너리는 키 와 벨류 값으로 나눌수있습니다

 

 

퀴즈

리스트와 딕셔너리 퀴즈 : 스미스의 과학점수를 출력하시오
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'])

스미스는  피플  리스트에 0,1,2 즉 2번쨰에 위치해있고

그 안에서 과학점수는  스코어 -> 사이언스 에 위치해있으므로 

정답은 print(people[2]['score']['science']) 이 됩니다.

 

조건문은 if고 반복문은 for 문이다. 

if 문은 개인적인 생각이지만 아래처럼 정리할수있을것같당..!

if:만약  elif:아니면 else: 둘다 거짓일경우

for문 예시

num_list = [1, 2, 3, 6, 3, 2, 4, 5, 6, 2, 4]
# 1.짝수출력하기
for num in num_list:
    if num % 2 == 0:
        print(num)

리스트에있는 숫자들중 짝수를 출력하는 문제입니다!

 

num_list 에 num 변수를 사용하여 num 을 2로 나누었을떄 나머지가 0이 되면 출력하라.

라는 명령을 넣어주어서 짝수만을 출력하게 구성해보았습니다!

 

함수 def

 

def sum(a,b):
    print('더하기를하셨네요')
    return a+b

result = sum(1,2)
print(result)

def 는 예약어 입니다 

def 를 사용해 언제든지 위 함수가 필요할때 꺼내어 사용할수있습니다.

 

def에 sum(a,b) 를 넣고 나중에 함수를 사용할떄 a+b 라는 값으로 리턴하게되어

 

result 에 sum(1,2) 임의 의 값을 넣어  출력했을떄 덧샘을 실행하는 함수입니다! 

 

 

튜플


a = ('사과','감','배')  #리스트처럼 순서가있지만 수정이 불가능함
print(a)

튜플은 위에 설명과 같이 리스트와 비슷한 형태이나 추후에 수정이 불가능 합니다

 

집합

집합은 수학에서 말하는 그 집합과 비슷합니다 

set 문을 사용을하고 

중괄호를 사용해 딕셔너리와 비슷해보이지만 키는 없고 값 만 존재하는 형태로 보입니다.

 

집합
a = [1,2,3,4,3,2,3,4,5,8,7]
a_set = set(a) #집합
print(a_set) #집합의 특징 : 중복을 제거시켜준다.

또 특징이 있다면 리스트에서 중복된 숫자를 제거시켜준다는 특징이있습니다

 

 

교집합과 합집합
a = ['사과','감','배','수박','딸기']
b = ['배','사과','포도','참외','수박']

a_set = set(a)
b_set = set(b)

print(a_set & b_set) #교집합
print(a_set | b_set) #합집합


# 차집합 퀴즈
student_a = ['물리2','국어','수학1','음악','화학1','화학2','체육']
student_b = ['물리1','수학1','미술','화학2','체육']
a = set(student_a)
b = set(student_b)
print(a-b)

 교집합과 합집합 차집합 등 여러가지로 활용할수있습니다

 

map 함수와 람다함수  필터함수

# def check_adult(person):
#     return ('성인' if person['age'] > 20 else '청소년')
# result = map(check_adult,people)
# print(list(result))
#  람다
# result = map(lambda person: ('성인'if person['age'] > 20 else '청소년'),people)
# print(list(result))

#  필터
# result = filter(lambda x:x['age']>20 ,people) # person = x
# print(list(result))

오늘 배우면서 가장 이해하기 어려웠던 3종세트였습니다..

아직 전부를 이해한것은 아니지만  제가 아는 지식나름대로 끄적여볼게요.. 끄응

 

람다 함수는 복잡한 코드를 1줄또는 2줄로 간단하게 줄여줄수있는 굉장한 능력을 가진 녀석입니다

map 함수는 리스트에 항목마다 함수를 적용해준다고합니다

또 필터 함수는  네  여러분들이 아시는 공기청정기 필터 청소기 정수기 필터 같은 능력을 가진 친구인데요

말그대로 내가 원하는 조건의 항목만을 가져와주는 걸러주는? 그런역할을 하는 친구입니다 

그리고 이외에 클래스 를 적용하는법과  

코드를 간소화하는법 등등 많은 꿀팁들도 배웠습니다

 

# from main_func import *

를 활용하여 다른 파일에있는 코드를 가져오는법도 익히게되었습니다

저기서 임포트 *에서 * 이 의미하는것은 파일 전체를 뜻한다고합니다!

 

 

 

오늘은 여기까지! 작성해볼게요 

그러면 다들 코딩 열공하세요~~~~!!!!!!!

 

 

스파르타 코딩클럽 사랑해용~~~~

 

 

 

이 블로그는 개인적인 공부 후기를 남긴 글입니다 광고아니에용

후우.. 열심히해따 ㅎㅎ