[TIL] 파이썬 기초2 _문제풀이
2주차 시작.
이번주 발제는 강의듣기, 미션하기, 개인과제 제출하기. (아직 남은 웹강의도 계속 들어야 함.. 동기들보다 많이 바쁠 예정이다..ㅠㅠ)
새로운 팀이 발표되었다. 똑같이 B5에 배정되어서 방은 그대로:)
오늘 강의는 파이썬 기초 문법을 듣고 활용하는 것을 연습하는 위주로 흘러갔다.
내일배움단 강의에서 듣던 것보다 조금더 차근차근 기초를 설명하고 쌓아가는 느낌이라 듣기 수월했다.
아마 더 어려운 걸(문법 활용) +모르는거(주식)랑 합해서 해봐서 그런 것 같음... 어떻게 배우는 것도 스파르타로 하고있네..
----
강의들으면서 이해한대로 정리해보았다.
> 프로그래밍 언어는
내가 하고 싶은 말을 컴퓨터가 사용하는 말인 전자신호(011001)로 바꾸어주는 번역팩을 설치했다고 보면 된다.
머신러닝, 데이터쪽에서 많이 사용한다.
> 변수란…
변수 = 숫자, ‘문자열’, True, False 등
값이 담겨있는 곳이고, '메모리에 올려둔다' 라고 표현한다
> 문자열 다루기
리스트 & 딕셔너리 형
list는 순서대로, []안에 넣는다.
list 에는 문자열, 숫자, 참 거짓, 그리고 리스트도 또 담을 수 있다!
특정 list 요소 뽑아내기
a_list = ['사과','배','감',['딸기','자몽']]
print(a_list[3][1])
a_list > [] > [] 라고 생각하면 된다. 마치 폴더 안에 폴더가 있듯이.
출력값 = 자몽
dictionary 는 key값 : value값 으로 표현, {}안에 넣는다.
예를 들어 people dict안에 이런 값이 있을때,
people = {name: john, age:30}
각 요소를 출력하는 방법은 다음과 같다
for person in people:
print(person['name'],person['age'])
> 더 깔끔하게 쓰기
for person in people:
name = person['name']
age = person['age']
print(name,age)
오늘 강의 들으면서 쓴 퀴즈 풀이들.
——
짝수만 출력하기 퀴즈 #성공!
for num in num_list:
if(num%2==0):
print(num)
num%2==1이면 홀수!
——
짝수 개수 구하기 퀴즈. #실패
검색하여 len(), count()함수를 써야하나 하고 온갖걸 print 안에 넣어봤는데 되지 않았다. 힌트 듣고 흘려보내버린 나....바보..
len()는 리스트 요소의 길이를 구하는 것이고, count()는 세어주는게 맞지만 특정 요소가 몇 개있는지 세어주는 것임
단순히 변수하나를 설정하고
For문이 반복되어 값을 구할때마다 변수 +1 하면 되는거였음
- 변수 += 1
이렇게 쓸수도 있음
——
모든 숫자 더하기 #성공?
for num in num_list:
summary = sum(num_list)
print(summary)
해설에서는 변수와 변수값 0을 설정하고 변수에 num을 더하는 방식으로 진행했다.
sum = 0
for num in num_list:
sum = sum + num
print(sum)
생각해보건데 새 값을 넣고싶을때 어려울 수 있겠다는 생각이 들었다… 음….. sum이 0으로 설정되어 들어가있는 거면 결국 같은거 아닌가? 이후에 sum 값에 변수를 더할 수 있도록 바꾸면 문제가 생기는건가? List에 추가하면 결국 같은 for 문을 돌아서 둘다 같은 값이 나올텐데.. 흠 궁금하다 궁금해
——
가장 큰 값 구하기. #성공.애매한
는 max, min을 쓰면 되는 것으로 알고 있지만
print(max(num_list))
여기서는 변수 설정해서 for문으로 굴리는걸 원하는 거겠지
num_list = [1, 2, 3, 6, 3, 2, 4, 5, 6, 2, 4]
maxnum = num_list[0]
print(maxnum)
해서 첫번째 요소를 가장 큰 숫자로 적용하고, for문 안에서 비교해서 굴리면 되는데..
num_list = [1, 2, 3, 6, 3, 2, 4, 5, 6, 2, 4]
maxnum = num_list[0]
for num in num_list:
maxnum = maxnum < num
print(maxnum)
?? True가 나온다ㅋㅋㅋ
for num in num_list:
if maxnum < num :
maxnum = input(num)
print(maxnum)
이렇게 하면 영원히 작동되는 듯.. input이 뭐길래..
> 문자열로 바꿔주는거라서 연산이 안되는구나;
for num in num_list:
if maxnum < num :
maxnum = int(num)
print(maxnum)
성공! 해설에는 int(정수)를 딱히 넣지 않았다
이번주는 파이썬 공부하면서.. 지난주 미니프로젝트에 시간부족으로 구현하지 못했던 기능들을 넣어 발전시켜보고싶다.
밀린 웹강의도 잊지말고 얼른 듣자…