본문 바로가기
파이썬

5. 파이썬 컬렉션 타입 - 튜플

by 곽정우 2024. 3. 14.

1. 튜플

여러 가지 데이터 타입의 값을 저장할 수 있는, 변경 불가능(immutable)한 순서가 있는 컬렉션입니다.

  • 변경 불가능: 튜플 생성 후에는 요소 추가, 삭제, 수정이 불가능합니다.
  • 효율성: 튜플은 리스트보다 메모리 효율적이며, 특히 데이터를 자주 변경하지 않는 경우 성능 향상에 도움이 됩니다.

 

1-1. 생성

튜플은 괄호 ()를 사용하여 생성하며, 내부에 포함된 각 항목들은 쉼표로 구분됩니다.

 

1-2. 인덱싱

  • 튜플의 각 항목은 위치(인덱스)를 가지고 있으며, 인덱스를 사용하여 접근할 수 있습니다.
  • 인덱스는 0부터 시작합니다.

 

1-3. 슬라이싱

  • 슬라이싱을 통해 튜플의 일부분만을 추출할 수 있습니다.

 

1-4. 연산

  • 튜플 간의 + 연산으로 튜플을 결합할 수 있습니다.
  • * 연산으로 튜플을 반복할 수 있습니다.

 

1-5. 언패킹

  • 튜플의 항목들은 변수들에 할당될 수 있습니다. (리스트도 가능)

 

1-6. 멤버십 테스트

  • in 연산자를 사용하여 튜플에 특정 값이 있는지 확인할 수 있습니다. (리스트도 가능)

 

1-7. 튜플의 정렬

  • 튜플은 sort() 메서드를 제공하지 않지만, sorted() 함수를 사용하여 정렬할 수 있습니다.

 

1-8. 변환

  • 튜플을 리스트로, 리스트를 튜플로 변환할 수 있습니다.

 

2. input 함수

  • 사용자(개발자)에게 데이터를 입력받을 수 있는함수
  • 데이터는 항상 문자형(str)으로 입력됨

 

 

※. 문제:

국어점수, 영어점수, 수학점수를 입력받는데 총 점과 평균을 구하는 프로그램을 작성해라.

단, 입력방법은 100/70/85 형태로 입력

 답:

Kor, Eng, Math = input('Please enter your Kor, Eng, and Math scores separated by a slash (/).').split('/')

# The First Anwer
a=(int(Kor) + int(Eng)+ int(Math))
b=a/3
print("Total_Score:", a)
print("AVG:", b)

print('-----------')

# The Second Anwer
print(f'Total_Score: {int(Kor)+int(Eng)+int(Math)}')
print(f'AVG: {(int(Kor)+int(Eng)+int(Math))/3}')
print(f'AVG: %.2f' % ((int(Kor)+int(Eng)+int(Math))/3))

실행 결과: