🔍 튜플(Tuple)
- 리스트([])와 비슷하지만, 한번 선언이 되면 아이템 변경 불가(수정, 삭제 등)
- ()을 사용해서 선언하지만 생략이 가능하다.
- 튜플 안에 또 다른 자료형 데이터를 저장할 수 있다.
myNum1 = (1,3,6,8,9)
myNum2 = 4,6,2,7,8
🗝 tuple의 아이템 조회
- 인덱스를 이용하여 조회 가능
students = ('홍길동', '박찬호', '이용규', '박승철')
students[2] → '이용규'
🗝 in, not in 키워드
- 아이템의 존재 유/무 확인(True/False)
- 문자열에서도 사용 가능
예시) if '강호동' in students: → False
import random
userNum = int(input('원하는 숫자 입력:'))
comNum = random.sample(range(1,10), 5)
if userNum in comNum:
print('빙고')
else:
print('다음기회')
print(comNum)
🗝 len()함수
- 튜플에 저장된 아이템 개수
- len()과 반복문을 이용하면 아이템 조회가 가능하다.
students = ('홍길동', '박찬호', '이용규', '박승철')
for i in range(len(students)):
print(i, students[i])
🗝 tuple 결합 (+)
- 새로운 튜플을 만듦. A + B = C(새로운 튜플)
tip) 튜플에서는 extend() 함수를 사용할 수 없음
myNum = (1,3,6,8,9)
frNum = (4,6,2,7,8)
for i in frNum:
if i not in myNum:
myNum = myNum + (i, )
print(myNum) → (1, 3, 6, 8, 9, 4, 2, 7)
🗝 tuple 슬라이싱 [n:m]
- 원하는 아이템만 뽑아낸다.
tip) 튜플에서는 슬라이싱을 이용해서 아이템을 변경할 수 없다.
🗝 list 와 tuple 변환
- list와 튜플은 자료형 변환이 가능하다.
myNum = [1,3,6,8,9]
myNum = tuple(myNum)
print(type(myNum))
myNum = list(myNum)
print(type(myNum))
🗝 tuple 정렬
- 수정이 불가하기 때문에, list로 변환한 뒤 sort() 함수 사용
- sorted()는 정렬 후 리스트 자료형 반환
students = ('홍길동', '박찬호', '이용규', '박승철')
sortStd = sorted(students) → ['박승철', '박찬호', '이용규', '홍길동']
🗝 tuple과 for 문
- for 문을 이용하면 튜플의 아이템 조회 가능
- len() 함수와 인덱스를 사용하거나, 범위를 튜플로 지정
- 내부 튜플 조회 가능
studentCnt = ((1, 19), (2, 20), (3, 24), (4, 31), (5, 22))
for clNo, std in studentCnt:
print('{}반 : {}명'.format(clNo,std))
🗝 tuple과 while문
- for이 사용빈도가 더 높으나 사용할 수 있다.
studentCnts = (1, 18), (2,19), (3,23), (4,21), (5, 20), (6,22), (7,17)
minClNo = 0; maxClNo = 0
minCnt = 0; maxCnt = 0
n = 0
while n < len(studentCnts):
if minCnt == 0 or studentCnts[n][1] < minCnt:
minCnt = studentCnts[n][1]
minClNo = studentCnts[n][0]
if maxCnt == 0 or studentCnts[n][1] > maxCnt:
maxCnt = studentCnts[n][1]
maxClNo = studentCnts[n][0]
n += 1
print('가장 인원 수가 작은 반 : {}반({}명)'.format(minClNo,minCnt))
print('가장 인원 수가 많은 반 : {}반({}명)'.format(maxClNo,maxCnt))
'Python > Python 기초' 카테고리의 다른 글
[파이썬 기초] 알고리즘 - 검색,순위 (0) | 2022.05.06 |
---|---|
[파이썬 기초] 딕셔너리(Dictionary) (0) | 2022.05.04 |
[파이썬 기초] 리스트(list) (0) | 2022.05.02 |
[파이썬 기초] return과 print의 차이 (0) | 2022.04.30 |
[파이썬 기초] 추상클래스, 예외 (0) | 2022.04.28 |