코린이의 개발 일지

[파이썬] 3. 튜플(tuple) 과 4. 집합(set) 본문

프로그래밍 언어 문법/파이썬 문법 정리

[파이썬] 3. 튜플(tuple) 과 4. 집합(set)

폴라민 2021. 9. 13. 17:34
반응형

파이썬 자료형에는 튜플과 집합도 있다.

튜플은 리스트와 비교했을 때 크게 강력한 점이 없기 때문에 자주 쓰이지 않고

집합은 알고리즘 문제를 풀 때 코드를 '파이썬스럽게' 짜는데 아주 큰 도움을 준다.

set을 써서 코드가 아주 간결해지는 경우가 많다는 뜻이다. 그러므로 잘 기억해두는 것이 좋다.

 

먼저 튜플을 알아보자

 

1. 튜플 (Tuple)

 

튜플은 앞서 말했듯 특별한 점은 크게 없다. 단점은 리스트와 달리 후에 새로운 요소 추가가 불가능하다.

# 튜플은 처음에 지정하면 후에 요소 추가 불가능
menu=("떡볶이","치킨")
print(menu[0]) # 인덱스로 특정 요소 지정 가능
print(menu[1])

(name, age, hobby)=("폴라민","24","산책")
print(name, age, hobby)


'''
출력 결과

떡볶이
치킨
폴라민 24 산책
'''

 

형태가 이렇게 생겼구나 정도만 알면 될 듯 하다.

 

2. 집합 (set)

 

집합의 가장 큰 특징 두가지를 잘 알아두자.

1. 중복안됨

2. 순서 없음

 

중복 안된다는 점이 매우 중요하다. 잘 기억해두자.

 

# 집합
# 중복 안됨, 순서 없음
any={1,2,3,3,3}
print(any)

java={"h","l","k","3"}
python=set(["1","2","3","4"])

# 공통 인수 찾기
print(java&python) # java 와 python에 동시에 있는 요소
print(java.intersection(python)) # 마찬가지. 두개의 집합에 동시에 있는 요소

# 합집합
print(java|python) # 중복안됨이라는 특징 때문에 3은 하나만 들어감.
print(java.union(python)) # 위와 같은 명령어

# 차집합
print(java-python) # java에서 python과 중복되는 요소 제거됨.
print(java.difference(python))

# 요소 추가
java.add("23") # 튜플과 달리 새로운 요소 추가 가능
print(java)

# 요소 제거
python.remove("4") # 요소 제거 가능
print(python)


lst=[1,2,3,4,4,3]
print(lst)
lst=list(set(lst)) # set으로 자료형이 바뀌면서 중복 요소 제거 후 다시 list자료형으로 바꿈
print(lst) # 중복 요소 제거된 후 list


'''
출력 결과

{1, 2, 3}
{'3'}
{'3'}
{'k', 'l', '4', '3', '1', '2', 'h'}
{'k', 'l', '4', '3', '1', '2', 'h'}
{'k', 'l', 'h'}
{'k', 'l', 'h'}
{'k', 'l', '3', '23', 'h'}
{'1', '3', '2'}
[1, 2, 3, 4, 4, 3]
[1, 2, 3, 4]
'''
반응형
Comments