튜플에 담긴 여러 문자열 사이에서 공통 단어를 찾아야 할 때는 join 메서드, set 자료형, & 연산자, 그리고 split 메서드를 활용할 수 있습니다.
join 메서드는 특정 구분자를 기준으로 여러 값을 하나의 문자열로 합칠 때 사용합니다.
파이썬에는 set(집합)이라는 자료형이 기본으로 제공됩니다. 집합은 중복 없이 고유한 요소만을 가지며, 교집합(intersection), 차집합(difference), 합집합(union), 대칭차집합(symmetric difference)과 같은 집합 연산에 매우 유용합니다.
split 메서드는 주어진 문자열을 지정한 구분값을 기준으로 여러 조각으로 나누는 기능을 수행합니다.
& 연산자는 AND(논리곱) 연산을 수행하며, 집합에 적용하면 두 집합의 교집합을 구하는 데 사용됩니다.
다음은 이를 실제로 구현한 예제입니다.
예제
my_tuple_1 = ('Hi there', 'Hi Will,', 'Hi ', 'Hi there')
print("The tuple is : ")
print(my_tuple_1)
my_result = ", ".join(sorted(set(my_tuple_1[0].split()) & set(my_tuple_1[1].split()) &
set(my_tuple_1[2].split())))
print("Common words among the tuples are : ")
print(my_result)
출력 결과
The tuple is :
('Hi there', 'Hi Will,', 'Hi ', 'Hi there')
Common words among the tuples are :
Hi
코드 설명
- 튜플을 정의하고 콘솔에 출력합니다.
split메서드를 사용해 각 문자열을 공백을 기준으로 분리합니다.- 분리된 단어들을
set으로 변환한 뒤,&연산자로 세 집합의 교집합 즉 공통 단어를 구합니다. sorted와join메서드를 이용해 결과를 정렬하고 하나의 문자열로 합칩니다.- 이 결과를 변수에 할당한 후 콘솔에 출력합니다.