튜플은 리스트와 달리 아이템 추가, 삭제, 변경이 불가능하다.
# 리스트와 차이점
studentTuple = ('짱구', '철수', '유리', '훈이', '맹구')
studentList = ['짱구', '철수', '유리', '훈이', '맹구']
# 아이템 추가
studentList.append('영희')
# studentTuple.append('영희') #불가능
# 아이템 삭제
studentList.remove('영희')
# studentTuple.remove('영희') #불가능
# 아이템 변경
studentList[0] = '흰둥이'
# studentTuple[0] = '흰둥이' #불가능
튜플은 선언 시 괄호 생략이 가능하다
studentList = ['짱구', '철수', '유리', '훈이', '맹구']
studentTuple = '짱구', '철수', '유리', '훈이', '맹구'
print(studentList)
print(type(studentList))
print(studentTuple)
print(type(studentTuple))
💡result
['짱구', '철수', '유리', '훈이', '맹구']
<class 'list'>
('짱구', '철수', '유리', '훈이', '맹구')
<class 'tuple'>
studentList = ['짱구', '철수', '유리', '훈이', '맹구']
studentTuple = '짱구', '철수', '유리', '훈이', '맹구'
print(f'studentList : {type(studentList)}')
print(f'studentTuple : {type(studentTuple)}')
print(f'tuple(studentList) : {tuple(studentList)}')
print(f'list(studentTuple) : {list(studentTuple)}')
💡result
studentList : <class 'list'>
studentTuple : <class 'tuple'>
tuple(studentList) : ('짱구', '철수', '유리', '훈이', '맹구')
list(studentTuple) : ['짱구', '철수', '유리', '훈이', '맹구']
튜플은 수정이 불가능하기 때문에 리스트로 변환 후 정렬한다.
sorted() 함수를 이용하면 리스트로 변환하지 않고 정렬할 수 있다.
단, sorted()함수는 리스트 자료형을 반환한다
studentTuple = '짱구', '철수', '유리', '훈이', '맹구'
print(studentTuple)
# 리스트로 변환 후 정렬
students = list(studentTuple)
students.sort()
print(students)
# sorted()
print(sorted(studentTuple))
💡result
('짱구', '철수', '유리', '훈이', '맹구')
['맹구', '유리', '짱구', '철수', '훈이']
['맹구', '유리', '짱구', '철수', '훈이']
studentScore = (9.5, 7.8, 7.6, 9, 7.5, 8.3)
# 아이템 정렬
scores = sorted(studentScore)
# 최저 최고 점수 삭제
scores.pop(0)
scores.pop()
sum = 0
for score in scores:
sum += score
scores = tuple(scores)
print(f'studentScore : {scores}')
print(f'총점 : {sum}')
print(f'평균 : {round(sum / len(scores), 2)}')
💡result
studentScore : (7.6, 7.8, 8.3, 9)
총점 : 32.7
평균 : 8.18구', '유리', '짱구', '철수', '훈이']
studentTuple = '짱구', '철수', '유리', '훈이', '맹구'
for i in studentTuple:
print(i)
studentTuple = '짱구', '철수', '유리', '훈이', '맹구'
💡result
짱구
철수
유리
훈이
맹구
for문을 이용한 내부 튜플 조회
bloodType = (('짱구', 'AB'), ('철수', 'A'), ('유리', 'B'), ('훈이', 'A'), ('맹구', 'O'))
for name, type in bloodType:
print(f'{name} : {type} ')
💡result
짱구 : AB
철수 : A
유리 : B
훈이 : A
맹구 : O
classTuple = ((1, 20), (2, 18), (3, 15), (4, 25), (5, 18))
max = 0
maxC = 0
min = 0
minC = 0
for c, cnt in classTuple:
if max < cnt or c == 1:
max = cnt
maxC = c
if min > cnt or c == 1:
min = cnt
minC = c
print(f'가장 많은 학급 (학생 수) : {maxC}({max})')
print(f'가장 적은 학급 (학생 수) : {minC}({min})')```
코드를 입력하세요
💡result
가장 많은 학급 (학생 수) : 4(25)
가장 적은 학급 (학생 수) : 3(15)