[Python] zip() ํจ์๋ฅผ ์ด์ฉํ ์ง์ ํ
2024. 4. 15. 17:36ใ[๐ปPython] pearl's python ๋ณ์๋ฆฌ ํ์ถ๊ธฐ ๐ฃ
iterable ์๋ฃํ (๋ฐ๋ณต ๊ฐ๋ฅํ ์๋ฃํ)
- ๋ฆฌ์คํธ, ๋์ ๋๋ฆฌ, ์งํฉ, ํํ๊ณผ ๊ฐ์ ์๋ฃํ
zip() ๋ฉ์๋๋?
- for๋ฌธ์์ ๋ง์ด ์ฌ์ฉํ๋ค.
- ๋ฐ๋ณต ๊ฐ๋ฅ ์๋ฃํ ์ฌ๋ฌ๊ฐ๋ฅผ ๋๊ฒจ์ฃผ๋ฉด, ์ด๋ค์ ํฉ์ณ์ ํํ ๋ฐ๋ณต์ iterator๋ฅผ ๋ฐํํ๋ ํจ์๊ฐ zip() ํจ์
- zip() ํจ์๋ ๋ค์๊ณผ ๊ฐ์ด ์ฌ๋ฌ ๊ฐ์ ๋ฐ๋ณต ๊ฐ๋ฅ ์๋ฃํ์ ๋ฐ์์์๋ค. ์ด๋ฅผ ์ง์ ํaggregation๋ผ๊ณ ํ๋ค.
a = [10, 20, 30]
b = ('ten', 'twenty', 'thirty')
for val in zip(a, b): #๋ฆฌ์คํธa์ ํํb๋ฅผ ์ง์ ํํ์ฌ ์์ฑ๋ ํํ์ ์ถ๋ ฅ
print(val)
#์์ ์ถ๋ ฅ :
(10, 'ten')
(20, 'twenty')
(30, 'thirty')
zip ๋ฉ์๋ ํ๊ธฐ(์ธํจํน)
- zip() ํจ์๋ฅผ ํตํด ๋ฌถ์ฌ์ง ํํ๋ค์ ์๋์ ๋ฐ๋ณต๊ฐ๋ฅ์๋ฃ๋ค๋ก ๋๋๋ฆฌ๋ ์์
- ๋ค๋ฅธ ํจ์๋ฅผ ์ฐ๋๊ฒ์ด ์๋๋ผ zip() ํจ์์ ๋ฌถ์ธ ์๋ฃ๋ฅผ ์ธ์๋ก ์ ๋ ฅํ๊ณ * ์ฐ์ฐ์๋ฅผ ์ธ์ ์์ ๋ถ์ด๊ธฐ
str_list = ["๋ํฝ์ด", "๋ฌํฝ์ด", "์์ด์คํฌ๋ฆผ"]
int_tuple = (1,2,3,4,5)
int_list = [1,2,3,3,3,3,3]
zip_lst = list(zip(str_list, int_tuple, int_list)) # ์ธ๋ฑ์ค 2๋ฒ์ ์์๊น์ง๋ง ์ ์ฅ์ด ๋๋ค.
a, b, c = zip(*zip_lst)
print(a, b, c)
#์์ ์ถ๋ ฅ : ('๋ํฝ์ด', '๋ฌํฝ์ด', '์์ด์คํฌ๋ฆผ') (1, 2, 3) (1, 2, 3) #์ธ๋ฑ์ค 0,1,2๋ฒ๊น์ง๋ง ์ธํจํน๋๋ค
'[๐ปPython] pearl's python ๋ณ์๋ฆฌ ํ์ถ๊ธฐ ๐ฃ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Python]๋ค์์ 5๋ฑ ์๋ก (0) | 2024.04.18 |
---|---|
[Python] ๊ณต๋ฐฑ์ผ๋ก ๊ตฌ๋ถํ๊ธฐ 2 (0) | 2024.04.15 |
[Python] ๋ถ๋ถ ๋ฌธ์์ด (0) | 2024.04.15 |
[Python] ์งํฉ์ด๋? (0) | 2024.04.15 |
[Python] ํํ์ด๋? (0) | 2024.04.15 |