python 논리와 논리 표현식 / 분기문 if에 대해서 정리한다
그전에 전에 공부 했던 내용중에서 input() 함수에 대해서 잠깐 정리한다
※ input()
- 한 줄을 문자열 형태로 읽어들이고 문자열 형태로 반환 해준다
( 문자열이므로 문자열 관련 특정 함수 이용 또한 가능하다 )
( 위와 같이 split() 함수는 특정 문자열 함수인데
input() 함수는 문자열을 반환 해주므로 사용이 가능하다 )
* input().split()처럼 바로 사용도 가능하다
※ 논리와 논리 표현식
- 명제 : 참과 거짓 둘중에 하나로만 표현 가능한 문장
- 명제의 조건
1. 모든 내용을 빠짐없이 전부 포함해야 한다
2. 상호 베타적이어야 한다
* 중복이 없어야 한다
* 참, 거짓이 동시에 발생하거나 발생하지 않는 상황이 되면 안된다
예). 놀이공원의 입장료
1). 6세 미만의 입장료는 6000원이다
2). 6세에서 15세까지는 10000원이다
3). 16세 이상의 입장료는 15000원이다
철수는 6살이다
( 예시에 있는 명제들은 위에서 말한 1, 2번의 명제 조건을 둘다 만족하고 있다 )
( 위의 명제들의 내용을 코드로 표현해 보면 다음과 같이 나온다 )
* 위에 코드에서는 마지막에 else:를 사용했지만 정확하게 표현 하려면 elif:를 통해서도 표현이 가능하다
( 파일을 실행 했을때 철수의 나이는 6살이므로 다음과 같이 결과가 정상적으로 나온다 )
※ 비교 연산자
>(크다), <(작다), ==(같다),
>=(크거나 같다), <=(작거나 같다),
!=(같지 않다)
※ 논리 연산자
AND(그리고), OR(또는), NOT(아닌)
( 1800년대 조지 불이 말로 표현되는 논리들을 공식으로 표현하기 위해 만들었다 )
A = 나는 사람이다
B = 사람은 죽는다
C = 고로 나는 죽는다
위와 같은 삼단논법을 논리 연산자로 표현한 공식으로 정리해서 이해해본다
* True(참): T, False(거짓): F
A and B = C
T T T
T F F
F T F
F F F
A or B = C
T T T
T F T
F T T
F F F
not True = False
not False = True
드모르간 법칙를 통해서 not A or not B = not( A and B ) 로 표현이 가능하다
이러한 논리적 사고를 필요로 하기 때문에 평소에 수학 공부(증명 같은)를 해두면 도움이 된다
( 위에서 확인할수 있는점은 True == "True"가 성립되지 않는다는점이다.
그 이유는 True, False는 문자가 아닌 문자 상수열이기 때문이다 )
※ 분기문 ( if )
- if 표현식 뒤에는 ' : '를 붙여준다
- 들여쓰기를 통해서 영역을 구분한다 ( 들여쓰기를 신경써서 맞춰줘야한다 )
- if문 사용시 연속된 추가 조건을 달아주려면 'elif 표현식:' 을 사용한다
- else: 는 같은 분기문 내에서 위에 있는 조건문들이 모두 참이 아닐때 동작한다
( else:는 생략 가능하다 )
'프로그래밍 > PYTHON' 카테고리의 다른 글
[6일차] python 온도변환 프로그램 (0) | 2017.02.15 |
---|---|
[6일차] python while / if을 통한 검증 (안전한 프로그램) (0) | 2017.02.15 |
[4일차] python 자료형 집합 / 집합 연산자(list, tuple) (0) | 2017.02.13 |
[3일차] python 일(day)을 초로 환산하는 프로그램 / 주석 (0) | 2017.02.10 |
[3일차] python 변수 / 지정문(동시, 중복) (0) | 2017.02.10 |
댓글