Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- 오픈소스 관리체계
- CISO 제도 분석
- Black Basta
- L:azarus
- x64dbg
- 악성코드 분석
- VirtualAddress
- 랜섬웨어
- 분석
- 국제 사이버 범죄
- 오래된 지혜
- MALWARE
- 사이버안보
- 부다페스트 협약
- 우크라이나
- 악성코드
- 판례평석
- 러시아
- 랜섬웨어 분석
- 블랙바스타
- 오픈체인
- Fileless
- 릭 릭스비
- 독서
- CAN Network
- 사이버안보 협약
- Malware Tool
- 보안사고 회고
- 디지털 증거의 증거능력
- 악성코드분석
Archives
- Today
- Total
봔하는 수달
[코테] if 조건문 or 연산에서 주의점 본문
코딩을 하다보면 조건문을 통해서 2가지 조건을 만족하는 코드라인을 구현할때 보통 if 와 or을 사용하게된다.
이 과정에서 흔히들 하는 실수가 다음과 같은 코드를 구현한다는 것이다.
if i == 'y' or 'Y'
if i == 'y' or 'Y': 이 코드는 i가 'y'와 같거나 'Y'와 같은지를 검사하는 것이 목적이다.
그러나 이 코드는 의도한 대로 작동하지 않는다.
or 연산자는 두 개의 피연산자 중 하나라도 True이면 전체 식이 True가 되는데.
or 연산자 왼쪽에 있는 i == 'y'는 True 또는 False가 될 수 있지만, 오른쪽에 있는 'Y'는 항상 True가 된다.
이유는 비어 있지 않은 문자열은 True로 평가되기 때문이다.
따라서 if i == 'y' or 'Y': 식은 항상 True를 반환합니다. 올바른 코드는 다음과 같이 작성해야 한다.
if i in ['y', 'Y']:
'개발' 카테고리의 다른 글
CAN Network 이상탐지 (0) | 2023.01.07 |
---|---|
악성 APK 디텍터 개발 일지 (1) | 2022.07.16 |
Comments