rubus0304 님의 블로그

[Python 3주차] 강의요약 본문

강의/파이썬 알고리즘

[Python 3주차] 강의요약

rubus0304 2024. 10. 17. 23:28

https://teamsparta.notion.site/SCC-ace14ea32ecb4393a25099ea25bf02a5

 

[SCC] 파이썬의 근육 : 조건문, 반복문 | Notion

수업 목표

teamsparta.notion.site

 

 

 

Print 는 들여쓰기 띄어쓰기 중요함

스페이스바 나 Tab   

몇 칸 띄우든 일관서있게만 들여쓰기

권장은 스페이스바  (파이썬)

indentionerror  -> 들여쓰기 에러난거임.

 

들여쓰기의 중요성!

첫 번째 블록시작 조건의 종속절 첫 번재 블록시작 조건이 참이어야지만, 두 번재 블록 시작 if 절 실행됨.
들여쓰기를 안 한 경우 위에 조건과 상관없는 독립절로 앞에가 참이든 거짓이든 그냥 실행.

 

x는 0보다 크다 = 양수/ X % 2 == 0 (나머지구하기는 것 2로 나눴을 때 나머지가 0인 것은 2의 배수 즉, 짝수!!

X/2 는 몫/ X%2 는 나머지 구하기

 

if 안에 and/ or/ not 써서 조건 가능

 

 

if not (x == 5):  =  if x != 5:   조건절 같음!!

 

 

if문 한줄로 표현 가능!

 

 

조건문 (For, while)

FOR문

 

list구문을 내 데이터 한 개씩 반복실행

 

cf. 괄호만 바꿔서 (  )  튜플 (값 고정, 수정불가 특징)  

도 똑같이 반복해서 값 다 나올 때 까지 실행됨.

 

문자열 내 5개 문자 하나씩 다 나올 때까지 출력

 

range는 5개 출력하는데, 0부터 시작! 따라서, 써있는 숫자 -1 까지출력된다고 인지하면 됨

 

5까지 나오게 하고싶을 때 직관적

 

 

 

뒤에 쓰기해서 숫자나열

 

1부터 9까지 2씩 뛰어 3,5,7,9 근데 가운데 띄어쓰기를 곁들인..

 

 

딕셔너리 순환

.items    아이템이 뭐가 있는지 보여줌

딕셔너리는 KEY, VALUE 각각 적어줌

 

첫 번째 range로 정보 뽑고, if 절로 짝수만 뽑기 // 두 번재 range 내 step으로 2씩 건너뛰어 뽑기

 

 

 

2~9단까지 위에도 9까지인데 2부터시작/ 아래는 9까지인데 1부터시작 // 2에 해당한 경우 밑에 반복분 1~9 다 완료/ 그 다음 3 시작~ 쭉쭉

 

* 는 문자열 문자열이 숫자를 만나면 그 숫자만큼 반복됨
result 에 char를 더하면서 담게됨. 근데 조건인 char는 sentence 에 있는 문자들 중 o는 아님. 그니까 H는 됨, E는 됨 .... 이렇게 앞에 나온 result에 이어서 붙여서 들어가다 o는 안되니까 빠지고 나머지는 들어감

 

뒤에 end " " 는 뒤에 뭐 써주는 용인데 여기서 아무것도 안 쓴다 그리고 가로로 *이 갈 수 있게 도와줌

 

 

 

168은 FOR문을 굳이 써서 평균 구한 경우// 마지막 은 for문 안 쓰고 sum/ len 써서 평균 구한 경우!

 

 

zip 함수 쓰면 각각 값이 앞에 들어가게 할 수 있음

true 진짜 값  prediction AI가 예측한 값  

일치할 수록 좋음

일치하면 correct_pre~ +1 씩   값 맞은 갯수 누적해서 더해줌

accuracy 정확도는 맞춘 개수에다 진짜 값 값 몇 개인지 나눠줌  (정확도) 평균

 

 

 

 

While  

 

while 있고 그 조건 인 참일 때 그 아래있는 코드블록이 실행이 됨

while문은  조건에 True 이런 무한반복 되게하는 것 조심! 

 

while true:

    print(i)

 

true이므로 무한 +1 값 계속 나옴
1이면 5보다 작으니까 무한 i 는 1이라는 값이 계속 나옴

 

user가 intput에 quit 안 쓰면 you typed 반영 그리고 다시 나와 반복// quit 이라고 input에 쓰면 더이상 you typed 안 나오고 끝남

 


무한 후프인데, if랑 break 로 user_input에 quit 입력되면 break 멈추는 는 방법 만들어놓았기 때문에 괜춘
실제로 break를 적으면 위에 반복문이 어떤 것이든 그냥 끝남.

근데 if로 끝내는 것에 조건을 달아줌

 

 

break,  반복문을 강제로 멈출 때 / 입력받는 값이 quit 이거나 break 적용되게 조건을 줌

pass 아무런 동작을 안 하고 넘어감 else 일 때  짝수인 경우 패스, 홀수인 경우 출력

continue 계속 반복을 진행시키는 이런 조건일 때 그냥 계속 진행시켜 

 

pass와 continue 차이// pass 뒤에 print 있으면 거기까지 실행 하고 다시 위로 올라감 / 그냥 지나가는 것

continue는 뒤에 오는 print 구문 실행 안 하고  그 전에 다시 위로 올라가서 계속 실행 / 반드시 ~경우 프린트 출력 안 하고 바로 조건문으로 다시 넘어가는 것

 

 

 

 

 

0에서부터 시작을 하고, 반복 될 때마다 0, 1, 2 3번하고 끝난거// 왜냐 count가 3보다 작아야하니까// 2까지만!

print 밑에 count 또 있는 이유/ 프린트 되고 다시 countdp +1 되어 올리고 누적되서 2까지 되야하니까

 

 

팩토리얼은 연속해서 1씩 낮추면서 숫자를 곱하는 것  5! = 5*4*3*2*1  요렇게

num 이 처음에 5 팩토리얼이 1이니까 곱해서 5  그 다음 4 됨 해서 1*4 됨  num 이 0 보다 작아지면 끝

 

1. 4번 > < (정답)

2. (정답)

a = 1
if a > 0:
     print("양수입니다")
else:
     print("음수입니다")

 

1. 답: b, d (정답)

2

4

 

2.

numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
odd_numbers = []
for num in numbers:
    if num % 2 == 1:
        odd_numbers.append(num)
print(odd_numbers)

 

odd_numbers = []
for i in range(1, 11):
    if i % 2 != 0:
        odd_numbers.append(i)
        
혹은

odd_numbers = []
for i in range(1, 11):
    if i % 2 == 1:
        odd_numbers.append(i)

혹은
        
odd_numbers = []
for i in range(1, 11):
    if not i % 2 == 0:
        odd_numbers.append(i)

 

 

1. break는 확실한데,,나머지 3개는 강의에서 없었던 거 같은데..

일단  b   (오답)   // return 문 사용!! d 가 아님 (정답)

 

for i in range(1, 101):
    if i % 3 == 0:
       print("Fizz")
    elif i % 5 == 0:
       print("Buzz")
    else:
       print(i)

 

 

 

'강의 > 파이썬 알고리즘' 카테고리의 다른 글

[Python 5주차] 강의요약  (0) 2024.10.18
[Python 4주차] 강의요약  (0) 2024.10.18
[Python 2주차] 강의요약 (리스트, 딕셔너리, 튜플)  (3) 2024.10.16
[Python 1주차]  (0) 2024.10.14