이야기할 내용들 (반복문) 

  • 반복문 소개 
  • while문 과 while 반복문을 통한 무한루프
  • for in 반복문
  • 루프 관용구 
  • '==' 와 ' is' 의 차이 

 < 반복문 > 
어떤것을 반복실행 할때 편하라고 쓰는문 

1.  반복문은 while문,   for in 문. 이 있다. 
2.  반복루프는 '무한루프'가 있고 '유한루프'가 있다, 



<while 문 예시>

기본적인 while문 형태

1
2
3
4
5
6
= 5
while n > 0 : 
    print(n)
    n = n -1 
print('반복문 끝!')
print(n)
cs
  

>>>해석

5
4
3
2
1
반복문 끝!
0

 



while문으로 만든 무한루프

 (continue조건에 있으면 무시하고반복문 진행, break조건에 있으면 종료) 


1
2
3
4
5
6
7
8
while True :
    line = input(' > ' )
    if line[0== '#' :
        continue
    if line == 'done' :
        break
    print(line)
print('반복문 끝!')
cs


>>>해석

> 하이

하이


> #하이 


> 안녕하이 

안녕하이


>done

'반복문 끝!'




<for  in 반복문  >


기본적인 for in 문의 형태


1
2
3
for i in [54321] : 
    print(i)
print('반복문 끝!')
cs

>>> 해석

5
4
3
2
1
'반복문 끝!'


for i  in  [  ] 에서  'range'를 이용해  조건을 다양하게 쓸 수가 있다

1
2
3
for i in range(10):  ... > 0에서 9까지 1씩 증가한다. 즉, [0,1,2,3,4, ..., 9] ... 
for i in range(0102):  ... > 0에서 9까지 2씩 증가한다. 즉, [0,2,4,6,8] ...
for i in range(100-1): ... > 10에서 1까지 1씩 줄어든다. 즉, [10,9,8, ... 1] ... 

c



 ' is' 와 ' is not' 


반복문에서 조건을 만들때 is 를 사용하면 더 엄격하게  조건을 둘 수 있다, 

참,거짓을 따지는 ' == ' 와 같지만 'is'는 자료형까지 같은지  확인한다  


 0 == 0.0  의 결과는 True

 0 is 9,0 의 결과는 False 





이야기 할 내용들 . 

  • 조건문 소개 
  • 여러 조건을 넣을때, 주의할 점 
  • try / except문 소개


<조건문 소개>

우리는 파이썬코드를 작성할때 
조건문 if 를 이용해서 두가지 방향으로 갈 수있다 



조건문의 기본형태는 if로 시작하며 끝나는것을 나타내기 위해서 들여쓰기를 한다. 잘못쓴다면 오류가 난다.(블록의 형태를 만듦)


예. 기본적인 형태




조금 더 복잡한 조건문을 작성할때 (조건을 추가하고 싶을때) elif로 추가하고 else로 끝을낸다 


<여러 조건을 넣을때 주의할점> 


1. 조건이 겹치면 실행이 안된다

예. ( 여기서 else는 실행이 안됨.)


1
2
3
4
5
6
7
8
= input("숫자를 입력하시오")
= int(a)
if x < 2:
    print('작네')
elif x >= 2:
    print('크네')
else:
    print('응')
cs

2. 조건의 순서를 잘정해야한다.
예. ( x <20 밑에있는 조건은 실행이 안됨.)

1
2
3
4
5
6
7
8
9
10
11
= input("숫자를 입력하시오")
= int(a)
if x < 2:
    print('작네')
elif x < 20:
    print('20')
elif x < 10:
    print('10')
else :
    print('끝')
 
cs


< try/ except > 


의도치 않은 코드실수나 원하지 않는 input값을 받았을때 코드실행을 안될수 있는데 
이런 우려가 되는 코드부분은 try문으로 감싸고 바로밑에 except문으로 문제발생시 실행하고자 하는 코드를 작성함해서 오류검증 혹은 대응할 수 있다.
예.
1
2
3
4
5
6
7
8
9
10
11
= input('정수를 입력하시오')
try:
    x = int(a)
except:
    x = -1
 
if x > 0:
    print('잘하셧습니다')
else:
    print('정수가 아닙니다')
 
cs
 
 


이야기할 내용들 

  • 어떤 연산자는 어떤 값(상수의 타입)을 사용하냐에 따라 다르게 동작한다
  • 서로다른 타입값을 사용할때 어떻게 달라질까?? 



<사전 지식 >

먼저 상수의 기본적인 종류는  크게 세가지가 있다 ( 상수에서 나올 수 있는 타입 ) 

  • 정수형 ( int)
  • 부동소수점형 (float) 
  • 문자형(str) 


type(123)
>>> int
 
type(123.0)
>>> float
 
type('123')
>>> str

cs


< 어떤 연산자는 어떤 값을 사용하냐에 따라 다르게 동작한다.>


파이썬에서 어떤 연산자는 어떤 값타입에 사용하냐에 따라 다르게 동작합니다.  (대표적인 연산자는 + )
 

1. int형, float형 같이 숫자형에서 '+' 는 덧셈역할을 한다. 

2. 문자열 str형에서는'+'는  문자열 끼리 붙이는 역할을 한다,

에.


type(123)
>>> int
 
type(123.0)
>>> float
 
type('123')
>>> str
cs


<서로다른 타입값을 사용할때 어떻게 달라질까??>


1. 정수형(int) 와 부동소수점형(float) 를 연산하면 합하면 float형이 나온다. 


2. 숫자와 문자를 합하면 에러가나온다


= 3      
= 4.0    
= a + b
 
>>> 7.0 
 
= 1
= 'python'
= a + b
 
>>> Traceback (most recent call last):
 File “<stdin>“, line 1in <module>
TypeError: unsupported operand type(s) for +: ‘int’ and ‘str’
cs


3. 타입을 바꿀 수 있다. int( ) , float( ) , str( ) 

그러나 특이한점을 알아두자 

  • int(123.456) 하면 소수점이 절삭되서 나온다.

  • int('123.456') 처럼 소숫점이든 문자열에 int로 변환하면 에러가 뜬다.  but 소숫점이 없다면 에러는 안뜬다.

  • a = input ( ) 을 항때 ( ) 에  123.456을 입력한다면  a = '123.456' 문자형으로 나타난다.  


int(123.456)    float(123)
>>> 123          >>>123.0
 
int('123.456')  int('123')
>>> error        >>>123
 
= input( 123.456)
= '123.456'
cs



+ Recent posts