νŠœν”Œ(Tuple)

2020. 12. 28. 18:14γ†πŸ“š Algorithm/πŸ“• Python 문법

λ°˜μ‘ν˜•

 

νŠœν”Œ(Tuple)μ΄λž€ ?! λ¦¬μŠ€νŠΈμ™€ 맀우 μœ μ‚¬ν•œ μžλ£Œν˜• 쀑 ν•˜λ‚˜μΈλ°μš”!

νŠœν”Œμ€ ( ), λ¦¬μŠ€νŠΈλŠ” [ ]둜 λ‘˜λŸ¬μ‹Έμ΄λ©°, λ¦¬μŠ€νŠΈλŠ” μ–Έμ œλ‚˜ 값을 생성/μˆ˜μ •/μ‚­μ œ κ°€λŠ₯ν•˜μ§€λ§Œ νŠœν”Œμ€ ν•œλ²ˆ 정해진 값을 λ°”κΏ€ 수 μ—†λ‹€κ°€ κ°€μž₯ 큰 차이점 이라고 말할 수 μžˆμŠ΅λ‹ˆλ‹€ !

 

πŸ‘€νŠœν”Œ λ§Œλ“€κΈ°

νŠœν”Œκ³Ό 리슀트의 차이점을 μœ„μ—μ„œ λ§μ”€λ“œλ Έμ§€λ§Œ , λ‹€μ‹œ ν•œλ²ˆ κ°•μ‘°ν•˜μžλ©΄ νŠœν”Œμ€ κ°’μ˜ λ³€κ²½/μ‚­μ œκ°€ λΆˆκ°€λŠ₯ν•˜λ‹€λŠ” 점을 κΌ­ κΈ°μ–΅ν•΄λ‘‘μ‹œλ‹€!

λ˜ν•œ 리슀트λ₯Ό νŠœν”Œλ‘œ λ³€κ²½ν•˜λ €λ©΄ ? tuple(list)  ν•¨μˆ˜λ₯Ό 톡해 tuple둜 λ°”κΏ€ 수 μžˆμŠ΅λ‹ˆλ‹€.

tuple2 = 1,2,3,4

list1 = [1,2,3,4]
tuple3 = tuple(list1) # list1이 tuple둜 λ³€ν•œλ‹€

 

πŸ‘€νŠœν”Œ κΈ°λ³Έ μ‚¬μš©λ²•

νŠœν”Œμ€ ν•œλ²ˆ μ •ν•œ 값을 바꾸지 λͺ»ν•œλ‹€ λŠ” 것 λΉΌκ³ , λ¦¬μŠ€νŠΈμ™€ 맀우 μœ μ‚¬ν•˜κΈ°λ•Œλ¬Έμ— κ°„λ‹¨ν•œ νŠœν”Œμ˜ μ‚¬μš©λ²•λ§Œ μ •λ¦¬ν•΄λ³΄μ•˜μŠ΅λ‹ˆλ‹€.

 

νŠœν”Œ 인덱싱 ν•˜λŠ” 방법

tu = (1,2,3,'a','b','c')
tu[0] # 1
tu[3] # 'a'

 

νŠœν”Œ μŠ¬λΌμ΄μ‹± ν•˜λŠ” 방법

tu = (1,2,3,'a','b','c')
tu[1:] # (2,3,'a','b','c')

 

νŠœν”Œ λ”ν•˜κΈ° / κ³±ν•˜κΈ° ν•˜λŠ” 방법

tu = (1,2,'a','b')
tu2 = (3,'c')
tu + tu2 # (1,2,'a','b',3,'c')
tu * 2 # (1,2,'a','b',1,2,'a','b')

 

 

πŸ‘€νŠœν”Œ ν™œμš©ν•΄λ³΄κΈ°

νŠœν”Œμ—μ„œ 많이 ν™œμš©λ˜λŠ” κ°œλ…μ€ packing / unpacking이 μžˆλŠ”λ°μš”! κ°„λ‹¨νžˆ μ •λ¦¬ν•˜λ©΄,

packingμ΄λž€ ? ν•˜λ‚˜μ˜ λ³€μˆ˜μ— μ—¬λŸ¬κ°œμ˜ 값을 λ„£λŠ” 것 이고, unpackingμ΄λž€ ? νŒ¨ν‚Ήλœ λ³€μˆ˜μ—μ„œ μ—¬λŸ¬κ°’μ„ κΊΌλ‚΄μ˜€λŠ” 것 μž…λ‹ˆλ‹€.

 

νŠœν”Œμ€ 두 λ³€μˆ˜μ˜ 값을 λ°”κΏ€ λ•Œ μž„μ‹œλ³€μˆ˜κ°€ ν•„μš”μ—†λ‹€λŠ” 점, ν•¨μˆ˜μ˜ 리턴 값을 νŠœν”Œμ„ 톡해 μ—¬λŸ¬ 값을 전달 ν•  수 μžˆλ‹€λŠ” μž₯점이 μžˆμŠ΅λ‹ˆλ‹€.

 

νŠœν”Œμ˜ packing/ unpacking의 μ˜ˆμ‹œλ₯Ό λ“€μ–΄λ³΄κ² μŠ΅λ‹ˆλ‹€.

c = (3,4)
d,e = c # c의 값은 unpacking을 톡해 d,e값에 λ„£λŠ”λ‹€.
f = d,e # d,e의 값을 f에 packingν•œλ‹€.

 

πŸ‘€ νŠœν”Œμ„ 리슀트/λ”•μ…”λ„ˆλ¦¬μ— ν™œμš©ν•΄λ³΄μž!

νŒŒμ΄μ¬μ—μ„œ 많이 μ‚¬μš©λ˜λŠ” μžλ£Œν˜•μΈ λ¦¬μŠ€νŠΈμ™€ λ”•μ…”λ„ˆλ¦¬μ— νŠœν”Œμ„ ν™œμš©ν•΄λ³΄κ² μŠ΅λ‹ˆλ‹€. 

 

νŠœν”Œ 리슀트 ν™œμš©ν•˜κΈ°

for a in enumerate(list):
	print(a[0],a[1])
    
for a in enumerate(list):
	print(*a)

 

νŠœν”Œ λ”•μ…”λ„ˆλ¦¬ ν™œμš©ν•˜κΈ°

for a in dict.items():
	print(a[0],a[1])
    
for a in dict.items():
	print(*a)

 

 

μ΄λ ‡κ²Œ κ°„λ‹¨νžˆ νŠœν”Œμ˜ κΈ°λ³Έ 문법을 μ •λ¦¬ν•΄λ³΄μ•˜μŠ΅λ‹ˆλ‹€! 

리슀트 λŒ€μ‹  νŠœν”Œμ„ 잘 ν™œμš©ν•΄λ³΄λ©΄ μ•Œκ³ λ¦¬μ¦˜ 문제 ν’€ λ•Œ 쒋을 것 κ°™μ•„μš”~

λ°˜μ‘ν˜•