Set, Bool

김상우·2022년 3월 15일
0

Python

목록 보기
4/14
post-thumbnail

완전 기초부터 시작하는 파이썬

Set() : 집합 자료형

  • 특징
    중복을 허용하지 않으며, 순서가 없다(Undordered).
# 기본예제

s1 = set([1, 2, 3])
li = list(s1)
print(li)
print(li[0])

t1 = tuple(s1)
print(t1)
print(t1[0])
  • 해석
    set()을 이용한 집합 자료형 생성
    list로 변환
    list로 변환 후 출력 확인
    tuple로 변환
    tuple로 변환 후 출력 확인
  • 결과

    [1, 2, 3]
    1
    (1, 2, 3)
    1

  • 교집합, 합집합, 차집합
# 교집합

s1 = set([1, 2, 3, 4, 5, 6])
s2 = set([4, 5, 6, 7, 8, 9])
print(s1 & s2)
print(s1.intersection(s2))
  • 해석
    집합 자료형 s1, s2 생성
    &를 통해 교집합 출력
    intersection() 함수를 사용한 교집합 출력
    &와 intersection()은 동일한 결과를 나타낸다.
  • 결과

    {4, 5, 6}
    {4, 5, 6}

# 합집합

s1 = set([1, 2, 3, 4, 5, 6])
s2 = set([4, 5, 6, 7, 8, 9])
print(s1 | s2)
print(s1.union(s2))
  • 해석
    |를 통해 합집합 출력
    union() 함수를 사용한 합집합 출력
    |와 union()은 동일한 결과를 나타낸다.
  • 결과

    {1, 2, 3}
    {1, 2, 3}

# 차집합

s1 = set([1, 2, 3, 4, 5, 6])
s2 = set([4, 5, 6, 7, 8, 9])
print(s1 - s2)
print(s1.difference(s2))
print(s2 - s1)
print(s2.difference(s1))
  • 해석
    -를 이용하여 s1에 대한 s2의 차집합 출력
    difference() 함수를 사용하여 s1에 대한 s2의 차집합 출력
    -를 이용하여 s2에 대한 s1의 차집합 출력
    difference() 함수를 사용하여 s2에 대한 s1의 차집합 출력
    -와 difference()는 동일한 결과를 나타낸다.
  • 결과

    {1, 2, 3}
    {1, 2, 3}
    {8, 9, 7}
    {8, 9, 7}

  • add(), update(), remove()
# add()

s1 = set([1, 2, 3])
print(s1)
s1.add(4)
print(s1)
  • 해석
    s1 집합 자료형 정의
    s1 출력
    add()함수를 사용해 값 '4'추가
    추가 후 s1 출력
    이미 만들어진 집합 자료형에 1개의 값만 추가 할 경우 add() 사용
  • 결과

    {1, 2, 3}
    {1, 2, 3, 4}

# update()

s1 = set([1, 2, 3])
print(s1)
s1.update([4, 5, 6])
print(s1)
  • 해석
    s1 집합 자료형 정의
    s1 출력
    update() 함수를 사용해 여러 개의 값 '4', '5', '6' 추가
    여러 개의 값을 한번에 추가할 경우 update() 사용
  • 결과

    {1, 2, 3}
    {1, 2, 3, 4, 5, 6}

# remove()

s1 = set([1, 2, 3])
print(s1)
s1.remove(2)
print(s1)
  • 해석
    s1 집합 자료형 정의
    s1 출력
    remove() 함수를 사용해 특정한 값 '2' 제거
    특정한 겂을 제거할 경우 remove() 사용

Bool

bool 자료형은 True, False 두 가지 값만 가질 수 있다.

# 기본예제 1 - type으로 변수 a, b의 자료형 확인

a = True
b = False
print(type(a))
print(type(b))

# 기본예제 2 - 단순 조건에서의 반환 값 확인

print(1 == 1)
print(1 == 2)
print(2 > 1)
print(2 < 1)
  • 결과

    <class 'bool'>
    <class 'bool'>
    True
    False
    True
    False

  • 자료형의 참과 거짓을 구분하는 기준

자료형참, 거짓
문자열"python"True
""False
리스트[1,2,3]True
[]False
튜플()False
딕셔너리{}False
숫자형0이 아닌 숫자True
0False
-NoneFalse
# while을 사용한 예제

a = [1, 2, 3, 4]
while a:
    print(a.pop())
   
# if~else를 사용한 예제
if [1, 2, 3]:
    print("True")
else:
    print("False")
  • 결과

    4
    3
    2
    1
    True

if~else 예제에서 만약 [1, 2, 3]이 아닌 []라면 결과는 False로 출력된다.
pop() 함수는 리스트의 마지막 요소를 하나씩 꺼내는 함수이다.

profile
아침엔 운동하고 밤엔 잠을 잔다.

0개의 댓글