🐹 μ»¬λ ‰μ…˜ νƒ€μž… - νŠœν”Œ

λ―Όλ‹¬νŒ½μ΄μš°μœ Β·2024λ…„ 4μ›” 24일

🐹 파이썬 기초

λͺ©λ‘ 보기
6/19

πŸ’‘ 1. νŠœν”Œ

μ»¬λ ‰μ…˜ νƒ€μž…μ˜ 두 번째 자료ꡬ쑰, νŠœν”Œμ— λŒ€ν•΄ μ•Œμ•„λ³΄μž.

νŠœν”Œμ€ μ—¬λŸ¬ κ°€μ§€ 데이터 νƒ€μž…μ˜ 값을 μ €μž₯ν•  수 μžˆλŠ”, κ΄„ν˜Έ(())와 tuple()ν•¨μˆ˜λ‘œ νŠœν”Œμ„ 생성할 수 μžˆλ‹€.

tu1 = (1, 3, 5, 7)
print(tu1) # 좜λ ₯: (1, 3, 5, 7)
print(type(tu1)) # 좜λ ₯: <class 'tuple'>

tu2 = (10) # κ΄„ν˜Έ μ•ˆμ— ν•˜λ‚˜μ˜ μš”μ†Œλ§Œ λ„£μœΌλ©΄ μ—°μ‚°μž ()둜 인식해 νŠœν”Œλ‘œ μƒμ„±λ˜μ§€ μ•ŠλŠ”λ‹€.
print(tu2) # 좜λ ₯: 10
print(type(tu2)) # 좜λ ₯: <class 'int'>

tu2 = (10,) # μ‰Όν‘œ ν•˜λ‚˜λ₯Ό λ„£μ–΄μ£Όλ©΄ νŠœν”Œλ‘œ μΈμ‹ν•œλ‹€.
print(tu2) # 좜λ ₯: (10,)
print(type(tu2)) # 좜λ ₯: <class 'tuple'>

tu3 = tuple([1, 3, 5, 7])
print(tu3) # 좜λ ₯: (1, 3, 5, 7)
print(type(tu3)) # 좜λ ₯: <class 'tuple'>

tu4 = 1, 3, 5, 7 # 사싀 κ΄„ν˜Έ 없이도 λ§Œλ“€ 수 있음
print(tu4) # 좜λ ₯: (1, 3, 5, 7)
print(type(tu4)) # 좜λ ₯: <class 'tuple'>

λ¦¬μŠ€νŠΈμ™€ λ§ˆμ°¬κ°€μ§€λ‘œ μˆœμ„œκ°€ μžˆμ§€λ§Œ, λ³€κ²½λΆˆκ°€λŠ₯(immutable)ν•œ νŠΉμ •μ„ κ°€μ§„λ‹€.

tu1 = (1, 3, 5, 7)
tu1[3] = 9 # 
TypeError: 'tuple' object does not support item assignment

νŠœν”Œμ„ μ‚¬μš©ν•΄ μ—¬λŸ¬ λ³€μˆ˜λ₯Ό ν•œ λ²ˆμ— μ„ μ–Έν•  수 μžˆλ‹€.

apple, banna, orange = ('김사과', 'λ°˜ν•˜λ‚˜', 'μ˜€λ Œμ§€') 
print(apple) # 좜λ ₯: 김사과
print(banna) # 좜λ ₯: λ°˜ν•˜λ‚˜
print(orange) # 좜λ ₯: μ˜€λ Œμ§€

πŸ’‘ 2. νŠœν”Œμ˜ μ—°μ‚°

λ¦¬μŠ€νŠΈμ™€ λ§ˆμ°¬κ°€μ§€λ‘œ νŠœν”Œ λ˜ν•œ +둜 병합, *둜 λ°˜λ³΅μ„ ν•  수 μžˆλ‹€.

tu7 = (10, 20, 30)
tu8 = (40, 50, 60)

print(tu7 + tu8) # 좜λ ₯: (10, 20, 30, 40, 50, 60)
print(tu8 + tu7) # 좜λ ₯: (40, 50, 60, 10, 20, 30)

tu7 = tu7 + (40, 50) 
print(tu7) # 좜λ ₯: (10, 20, 30, 40, 50)

print(tu7 * 3) # 좜λ ₯: (10, 20, 30, 40, 50, 10, 20, 30, 40, 50, 10, 20, 30, 40, 50)

🐹: νŠœν”Œμ€ λ³€κ²½λΆˆκ°€λŠ₯ν•˜λ‹€λ©΄μ„œ λ‹€λ₯Έ μš”μ†Œμ™€μ˜ λ§μ…ˆμ΄ μ–΄λ–»κ²Œ λ˜λŠ”κ±΄κ°€μ—¬?!
-> λ‹€λ₯Έ μš”μ†Œλ₯Ό λ”ν•˜λŠ” 건 νŠœν”Œμ΄ λ³€κ²½λ˜λŠ” 것이 μ•„λ‹Œ μƒˆλ‘œμš΄ μ£Όμ†Œμ— μƒˆλ‘­κ²Œ μ €μž₯λ˜λŠ” 것이기 λ•Œλ¬Έμ— κ°€λŠ₯ν•˜λ‹€.

πŸ’‘ 3. νŠœν”Œμ˜ ν•¨μˆ˜

3-1. in

찾고자 ν•˜λŠ” μš”μ†Œ in νŠœν”Œμ˜ ν˜•μ‹μœΌλ‘œ νŠœν”Œ 속에 ν•΄λ‹Ή μš”μ†Œκ°€ μžˆλŠ”μ§€ 확인할 수 μžˆλ‹€.

print(2 in (2, 4, 6, 8, 10)) # 좜λ ₯: True
print(3 in (2, 4, 6, 8, 10)) # 좜λ ₯: False

3-2. sorted()

νŠœν”Œ 속 μš”μ†Œλ₯Ό μ •λ ¬ν•΄ 리슀트둜 λ°˜ν™˜ν•œλ‹€.

tu8 = (100, 30, 70, 20, 90)
tu8.sort() # AttributeError: 'tuple' object has no attribute 'sort'
sorted(tu8) # 좜λ ₯: [20, 30, 70, 90, 100]
type(sorted(tu8)) # 좜λ ₯: list

πŸ’‘ 4. input() ν•¨μˆ˜

input() ν•¨μˆ˜λŠ” μ‚¬μš©μžλ‘œλΆ€ν„° ν‚€λ³΄λ“œ μž…λ ₯을 λ°›λŠ” 데 μ‚¬μš©λ˜λŠ” λ‚΄μž₯ ν•¨μˆ˜μ΄λ‹€. ν”„λ‘œκ·Έλž¨ μ‹€ν–‰ 쀑에 μ‚¬μš©μžκ°€ 값을 μž…λ ₯ν•˜λ©΄ μž…λ ₯ν•œ 값이 λ¬Έμžμ—΄λ‘œ λ°˜ν™˜λ˜μ–΄ λ³€μˆ˜μ— μ €μž₯ν•˜κ±°λ‚˜ μ²˜λ¦¬ν•  수 μžˆλ‹€.

name = input()
print(name) # μ‹œμŠ€ν…œμ—μ„œ μ‚¬μš©μžκ°€ μž…λ ₯ν•œ 값이 좜λ ₯λœλ‹€ 

name = input('이름을 μž…λ ₯ν•˜μ„Έμš”: ') # λ¬Έμžμ—΄ 좜λ ₯ν•˜κ³  κ·Έ λ’€λ‘œ μž…λ ₯을 λ°›λŠ”λ‹€. name에 λ¬Έμžμ—΄μ€ μ €μž₯λ˜μ§€ μ•ŠλŠ”λ‹€.
print(f'{name}λ‹˜ μ•ˆλ…•ν•˜μ„Έμš”!) 

name, age, weight = input('이름, λ‚˜μ΄, λͺΈλ¬΄κ²Œλ₯Ό 컴마λ₯Ό κΈ°μ€€μœΌλ‘œ μž…λ ₯ν•˜μ„Έμš”').split(',') # split()을 μ΄μš©ν•˜μ—¬ μ—¬λ € λ³€μˆ˜λ₯Ό ν•œ λ²ˆμ— μ €μž₯ν•  수 μžˆλ‹€.

num1 = input('첫번째 숫자λ₯Ό μž…λ ₯ν•˜μ„Έμš”: ')
num2 = input('λ‘λ²ˆμ§Έ 숫자λ₯Ό μž…λ ₯ν•˜μ„Έμš”: ')
print('κ²°κ³Ό: ', num1 + num2) # input은 λ¬Έμžμ—΄λ‘œ λ°›μ•„μ Έ λ¬Έμžμ—΄ 연산이 λœλ‹€.

num1 = input('첫번째 숫자λ₯Ό μž…λ ₯ν•˜μ„Έμš”: ')
num2 = input('λ‘λ²ˆμ§Έ 숫자λ₯Ό μž…λ ₯ν•˜μ„Έμš”: ')
print('κ²°κ³Ό: ', int(num1) + int(num2)) # int() ν•¨μˆ˜λ₯Ό μ‚¬μš©ν•˜μ—¬ μž…λ ₯된 문자λ₯Ό 숫자둜 λ°”κΎΈλŠ” μž‘μ—…μ΄ ν•„μš”ν•˜λ‹€.
profile
μ–΄λ–»κ²Œ ν–„μŠ€ν„°κ°€ 개발자

0개의 λŒ“κΈ€