CodeGym /행동 /Python SELF KO /논리형 타입 작업

논리형 타입 작업

Python SELF KO
레벨 5, 레슨 5
사용 가능

5.1 타입 bool

Python에는 조건과 표현의 진위를 확인할 수 있는 특별한 논리 데이터 타입이 있어. 이건 bool (사실 Boolean이라 부름)라는 키워드로 표시되고 두 가지 값 중 하나를 나타내기 위해 사용돼: True (참) 또는 False (거짓).

이 데이터 타입은 조건문인 if, else, elif 같은 것들 뿐만 아니라 루프와 다른 제어 구조를 사용해서 프로그램의 실행 순서를 제어하는 데 엄청 유용해.

중요한 주의사항

Python에서의 논리 데이터 타입은 두 개의 상수 객체: True와 False로 표현돼. 하지만 True는 숫자 값 1로, False는 0으로 간주돼. 그래서 이걸 산술 연산에 사용할 수 있고, bool 타입은 int 타입의 서브클래스가 되는 거야.

실용적인 사용

단 두 개의 가능한 값을 가졌음에도 불구하고, bool 타입은 그 값들 자체로 강력한 게 아니라 그 위에 수행할 수 있는 일련의 논리 연산으로 강력해. 아래에서 설명할게.

5.2 논리 연산자

Python의 논리 연산은 프로그램의 실행 순서와 의사결정에 중요한 역할을 해. 주요 논리 연산은 and, or, not을 포함해. 그들의 사용을 이해하면 코드의 효율성을 상당히 개선할 수 있어.

논리 AND (AND)

and 연산자는 양쪽 인자가 모두 참일 때만 True를 반환해. 이 연산자는 여러 조건이 동시에 참인지 확인할 때 자주 사용돼.


a = True
b = False
print(a and b)  # 출력: False 

논리 OR (OR)

or 연산자는 하나 이상의 인자가 참일 경우 True를 반환해. 여러 가능한 조건 중 하나만 만족해도 코드가 실행돼야 할 때 유용해.


a = True
b = False
print(a or b)  # 출력: True

논리 NOT (NOT)

not 연산자는 인자의 불리언 값을 반전시켜. 인자가 True면 결과는 False가 되고 그 반대도 마찬가지야. 거부 조건을 만드는 데 유용할 수 있어.


a = True
print(not a)  # 출력: False

확장된 사용

논리 연산자는 더 복잡한 조건 표현식을 만들어서 더 복잡한 제어 흐름을 제어하는 데 자주 조합돼 사용돼.


a = 5
b = 10
c = 20
result = a < b and b < c  # a가 b보다 작고 b가 c보다 작은지 확인
print(result)  # 출력: True

Python의 논리 연산은 다양한 조건에 기반하여 프로그램의 동작을 제어하는 강력한 도구를 제공해. 그것들은 코드 작성 뿐만 아니라 가독성과 유지 보수성도 더 쉽게 해줘.

5.3 실용적인 예제들

Python은 bool() 함수를 사용해서 다른 데이터 타입을 불리언 타입으로 변환할 수 있게 해줘. 기본적으로, 0이 아닌 값이나 비어 있지 않은 값은 True로 변환되고, 0이나 빈 값은 False로 변환돼.

타입 변환 예제들:


print(bool(0))  # 출력: False 
print(bool(42))  # 출력: True
print(bool(""))  # 출력: False
print(bool("Text"))  # 출력: True

조건에서 불리언 변수를 사용하는 방법:


a = 5
b = 10
c = 20
is_a_min = a < b and a < c  # a가 b보다 작고 a가 c보다 작은지 확인 
print(is_a_min)  # 출력: True

불리언 변수를 True 또는 False와 비교할 필요는 없어, 비교의 결과는 바로 True 또는 False가 되니까. 예를 들어:

초기 코드 초기 코드를 별도의 변수로 분리 == True 제거

if a < b:
    print("a is min")

                    is_a_less = a < b
                    if is_a_less == True:
                        print("a is min")              
                

                    is_a_less = a < b
                    if is_a_less:
                        print("a is min")               
                

모든 비교의 결과는 True 또는 False인 값을 가지므로, 위의 예제처럼 변수에 할당할 수 있어. 하지만 if의 조건에서, 또는 while 루프에서 불리언 변수를 True와 비교할 필요는 없어. 불리언 변수는 이미 적절한 값을 가지고 있어. 그저 정확한 이름을 주면 모든 게 제자리에 맞을 거야.

즉, "if a == True:"라는 코드 대신에 그냥 "if a:"라고 쓰면 되고, "if a == False:" 대신에 "if not a:"라고 쓰면 돼.

2
과제
Python SELF KO, 레벨 5, 레슨 5
잠금
접근 금지
접근 금지
2
과제
Python SELF KO, 레벨 5, 레슨 5
잠금
윤년
윤년
코멘트
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION