🏁 Programming/Python

[Python] ν•œ λ²ˆμ— μ—°μ†μœΌλ‘œ μž…λ ₯ λ°›κΈ° (split, map)

Dhey 2022. 3. 15. 01:11
λ°˜μ‘ν˜•

 

λ°±μ€€ 문제λ₯Ό 풀닀보면 μœ„μ™€ 같이 ν•œ λ²ˆμ— μ—°μ†μœΌλ‘œ μž…λ ₯ λ°›μ•„μ•Ό ν•˜λŠ” κ²½μš°κ°€ λ§Žλ‹€. ν•˜μ§€λ§Œ 계속 μžŠμ–΄μ„œ κΈ€λ‘œ 남겨둔닀.

 

 

Pythonμ—μ„œ μž…λ ₯을 받을 λ•ŒλŠ”  input ν•¨μˆ˜ λ₯Ό μ‚¬μš©ν•œλ‹€.

input은 값을 λ¬Έμžμ—΄λ‘œ μ €μž₯ν•˜κΈ° λ•Œλ¬Έμ—, μ •μˆ˜λ‚˜ μ‹€μˆ˜ ν˜•νƒœλ‘œ μ €μž₯ν•˜λ €λ©΄ int(input()) or float(input()) ν˜•νƒœλ‘œ μ €μž₯ν•  수 μžˆλ‹€.

 

μ—¬λŸ¬ 개의 값을 μž…λ ₯ λ°›μœΌλ €λ©΄  split() 을 μ‚¬μš©ν•œλ‹€.

split도 λ§ˆμ°¬κ°€μ§€λ‘œ 값을 λ¬Έμžμ—΄λ‘œ μ €μž₯ν•˜κΈ° λ•Œλ¬Έμ—  map ν•¨μˆ˜ 에 int or float을 μ•žμ— μ§€μ •ν•΄μ£Όμ–΄ μ •μˆ˜λ‚˜ μ‹€μˆ˜λ‘œ λ³€ν™˜ν•œλ‹€.

 

 

# map ν•¨μˆ˜

: 리슀트의 μš”μ†Œλ₯Ό μ§€μ •λœ ν•¨μˆ˜λ‘œ μ²˜λ¦¬ν•˜λŠ” ν•¨μˆ˜. 

  보톡 μ—¬λŸ¬ 개의 데이터λ₯Ό ν•œ λ²ˆμ— λ‹€λ₯Έ ν˜•νƒœλ‘œ λ°”κΎΈκΈ° μœ„ν•΄ μ‚¬μš©ν•œλ‹€.

 

  ≫ ν˜•νƒœ

 map ( function, iterable ) 

    - 첫번째 λ§€κ°œλ³€μˆ˜λŠ” μ μš©μ‹œν‚¬ ν•¨μˆ˜, 두 번째 λ§€κ°œλ³€μˆ˜λŠ” λ°˜λ³΅κ°€λŠ₯ν•œ μžλ£Œν˜• (리슀트, νŠœν”Œ λ“±)

    - map ν•¨μˆ˜μ˜ λ°˜ν™˜ 값은 map κ°μ²΄λΌμ„œ listλ‚˜ tuple둜 ν˜• λ³€ν™˜μ„ μ‹œμΌœμ£Όμ–΄μ•Ό ν•œλ‹€.

    - ν•¨μˆ˜λŠ” int와 νƒ€μž…, λžŒλ‹€ν•¨μˆ˜, 일반 ν•¨μˆ˜ λͺ¨λ‘ κ°€λŠ₯

 

 

 

#1. κ°’ λ‘ κ°œλ₯Ό μž…λ ₯λ°›μ•„ λ³€μˆ˜ A, B에 μ €μž₯

A, B = input().split()	#λ¬Έμžμ—΄λ‘œ μž…λ ₯λ°›μŒ

A, B = map(int, input().split())	#μ •μˆ˜ν˜•μœΌλ‘œ μž…λ ₯λ°›μŒ
A, B = map(float, input().split())	#μ‹€μˆ˜ν˜•μœΌλ‘œ μž…λ ₯λ°›μŒ

 

#2. 리슀트둜 μž…λ ₯λ°›μ•„ μ €μž₯

L = list(map(int, input().split()))		#μž…λ ₯: 1 2 3 / 좜λ ₯: [1, 2, 3]

 

λ°˜μ‘ν˜•