ʕ ˙ɷ˙ ʔค

파이썬

파이썬 문법 (조건문, 반복문, 함수와 람다 표현)

YJ_P 2023. 1. 18. 21:23
  1. 조건문

- 프로그램의 흐름을 제어하는 문법

- 조건문을 이용해 조건에 따라서 프로그램의 로직을 설정 가능 

- 조건문은 대부분 프로그램에서 필수적으로 사용 

- 변수에 값에 따라 서로 다른 로직을 수행하기 

 

[예제] 

x = 15                      //x는 15 

if   x >= 10;              // x가 10이상인 참값일 때  

     print("x >=10")    //  코드를 출력한다

if  x >= 30; 

     print("x >= 30" )     // x는 30 이상이 아니라 출력하지 않음

 

  • 파이썬에서는 코드의 블록(Block)을 들여쓰기(Indent)로 지정한다. 
  • 탭을 사용하는 쪽과 공백(space)를 여러 번 사용하는 쪽으로 나뉨 
  • 파이썬 스타일 가이드라인에서는 4개의 공백 문자를 사용하는 것을 표준으로 설정한다. (space 4번)  
  • 조건문의 기본적인 형태는 if ~ elif ~ else 이다. 
  • if 는 조건을 만족하지 않으면 elif 로 들어가고 둘 다 만족하지 않을 시 else를 쓴다. 
  • 조건문을 사용할 때 elif 혹은 else 부분은 경우에 따라서 사용하지 않아도 된다. 
  • 보통 성적 구간에 따른 학점 출력 시 사용 

[비교 연산자] 

- 특정한 두 값을 비교할 때 이용 / 대입 연산자(=)와 같음 연산자(==)의 차이 유의 

비교 연산자 설명
x == y  x와 y가 서로 같을 때 참이다 
x != y x와 y가 서로 다를 때 참이다
x > y x가 y보다 클 때 참이다
x < y x가 y보다 작을 때 참이다 
x >= y  x가 y보다 크거나 같을 때 참이다
x <= y x가 y보다 작거나 같을 때 참이다

 

[논리 연산자] 

- 논리 값 (True/ False) 사이의 연산을 수행할 때 사용 

논리 연산자 설명
X and Y X와 Y가 모두 참일 때 참이다
X or Y X와 Y중에 하나만 참이어도 참이다
not X  X가 거짓일 때 참이다

 

[파이썬의 기타 연산자] 

- 다수의 데이터를 담는 자료형을 위해 in 연산자와 not in 연산자가 제공된다. 

- 리스트, 튜플, 문자열, 딕셔너리 모두에서 사용 가능 

in 연산자와 not in 연산자  설명
x in 리스트 리스트 안에 x가 들어가 있을 때 참이다
x not in 문자열 문자열 안에 x가 들어가 있지 않을 때 참이다 

[ 파이썬의 pass 키워드] 

- 아무것도 처리하고 싶지 않을 때 pass 키워드를 사용

- 예) 디버깅 과정에서 일단 조건문의 형태만 만들고 조건문을 처리하는 부분은 비워놓고 싶을 때 

score = 85 

if score >= 80; 

     pass     // 나중에 작성할 소스코드 

 

[조건문의 간소화] 

- 조건문에서 실행될 소스코드가 한 줄인 경우, 굳이 줄 바꿈을 하지 않고도 간략하게 표현할 수 있다. 

- 조건부 표현식은 if ~ else문을 한 줄에 작성할 수 있도록 한다. 

score = 85 

if score >= 80: result = "Success"                                 // Success  화면

else: result = "Fail"  

 

- 조건부 표현식(Conditional Expression)은 if ~ else문을 한 줄에 작성할 수 있도록 해줍니다. 

score = 85 

result = "Success" if score >= 80 else "Fail"             // Success  화면에 나오는 값 

print(result)    

 

[파이썬 조건문 내에서의 부등식] 

  • 다른 프로그래밍 언어와 다르게 파이썬은 조건문 안에서 수학의 부등식을 그대로 사용할 수 있습니다. 
  • 예를 들어 x > 0 and x < 20 과 0 < x < 20 은 같은 결과를 반환합니다. 

[코드 스타일 1]                                                                     [코드 스타일2] 

x = 15                                                                                    x = 15 

if x > 0 and x < 20;                                                                if 0 < x < 20; 

      print("x는 0이상 20 미만의 수입니다.")                                  print("x는 0이상 20 미만의 수입니다.")