์๋ ํ์ธ์.
์ ๊ฐ ๋จผ๊ฐ ํ์ด์ฌ์ ๊ณต๋ถํ ๋, ์ฒ์๋ถํฐ ๋ฌธ๋ฒ์ ๋ณด๋ฉด์ ํ๋๊ฒ ์๋๋ผ ๋ฌด์ธ๊ฐ๋ฅผ ๋ง๋ค๊ณ ์ ํ ๋
๊ทธ ๋๋ง๋ค ํ์ํ ๋ถ๋ถ์ ๊ตฌ๊ธ๋ง์ ํด์ ์ฐพ์ต๋๋ค.
์ด๋ฒ์ ํํฐ๋ง ์ดํ๋ฆฌ์ผ์ด์ ์ ๋ง๋ค ๋, ๊ฐ์ฅ ํฐ ๋๊ด์ด return๊ฐ์ ์ฌ๋ฌ ๊ฐ ๋ฟ๋ ธ์ ๋,
์ ๊ฐ ์ฌ๋ฌ ๊ฐ์ ์ด๋ป๊ฒ ๋ฐ์ ์ ์์๊น ์์ต๋๋ค.
์๋ฅผ ๋ค์ด ํํฐ๋ง ์ดํ๋ฆฌ์ผ์ด์ ์ ๋ง๋ค๋ฉด์
return wav_name, sr, time, x
return ๋ ๊ฐ์ด 4๊ฐ์ง๋ฅผ ์ด๋ป๊ฒ ํ๋ฉด ๋ฐ์ ์ ์์๊น ๊ณ ๋ฏผํ์ต๋๋ค.
์ฌ์ง์ด ๋ฆฌํด๋๋ ํ์ ๋ค์ด ์๋ก ๋ค ๋ค๋ฆ ๋๋ค.
๊ทธ๋ฌ๋ฉด ์ด๋ป๊ฒ ํด์ผํ ๊น์?
time๊ณผ x๋ wavํ์ผ์ ๋ฐ๋ผ ๊ฐ๋ณ์ ์ผ๋ก ๋ณํ๋ ๊ฐ์ ๋ฐฐ์ด์ด์์ต๋๋ค.
์ฌ๊ธฐ์ ํ์ด์ฌ์ ๋งค๋ ฅ์ ํ ๋ฒ ๋ ๋น ์ง๊ฒ ๋ฉ๋๋ค.
๋ณต์ ๊ฐ์ ์ธ์๋ฅผ ํ ๋ฒ์ ์ฒ๋ฆฌํ ์ ์๋ ํค์๋๊ฐ ์์ต๋๋ค.
*arg (argument ๋งค๊ฐ ๋ณ์์ ์ค์๋ง)
์ ๋ *์ด ๋ถ์ด ์๊ธธ๋ ํฌ์ธํฐ์ธ๊ฐ ์ง๋ ๊ฒ๋จน์๋๋ฐ, ํฌ์ธํฐ๊ฐ ์๋ ๋ณต์๊ฐ์ ์ธ์๋ฅผ ์๋ฏธํฉ๋๋ค.
์ข ๋ ์ฝ๊ฒ ํจ์์ ๊ฐ์ ๋ฐ๋ ๋ถ๋ถ์ ์ ๋ ์๋ง ๋ฃ์ด์ฃผ๋ฉด return๊ฐ์ด ๋ช ๊ฐ๋ ๋ค ๋ฐ์ ์ ์๋ค๋๊ฒ๋๋ค.
์์ ๋ก ๋ณด๊ฒ ์ต๋๋ค.
LPF(audio_read(wav_file_name))
1. audio_read(wav_file_name)
=> return wav_name, sr, time, x
2. LPF(*arg)
=> *arg == wav_name, sr, time, x
๊ทธ๋ ๋ค๋ฉด arg๊ฐ LPF์ ์ธ์๋ก ๋ค์ด๊ฐ๋ค๋ฉด arg์ ํ์ ์ ํ ๋ฒ ์ฐ์ด๋ด์ผ๊ฒ ์ฃ ?
์ tuple์ ๋ฐฐ์ด๊ณผ ๋น์ทํ ๊ฒ์ด ์๋๊ฐ? ๊ทธ๋ผ index๋ฅผ ๊ฐ์ง๊ณ ์๊ฒ ์ง?
๊ทธ๋ ๋ค๋ฉด ํํ์ ์ชผ๊ฐ๋ ๊ฒ์ ์์๋ด์ผํฉ๋๋ค. ์ฌ๋ผ์ด์ฑ, ์ฌ๋ฌ๊ฐ์ง๊ฐ ์๋๋ฐ ์ ๋ for๋ฌธ์ ์จ์ ์ชผ๊ฐ๋๋ก ํ๊ฒ ์ต๋๋ค.
์๊ฐ๋ณด๋ค ๊ฐ๋จํ๋ค์?!
๊ทธ๋ฌ๋ฉด ํ ๋ฒ ๊ฐ์ ์ ๋๋ก ์ ๋ฌ๋์๋์ง ์ฐ์ด๋ณด๊ฒ ์ต๋๋ค.
๋ค. ํ์ ์ด ์ ๋๋ก ๋ค์ด๊ฐ ์๋ค์. ์๋๋ ๊ฐ์ผ๋ก ๋ด์ผํ๋๋ฐ... ๋จธ ์ค๋ฅ์์ด ๊ฐ์ด ์๋์ค๋ ๋์ด๊ฐ๊ฒ ์ต๋๋ค.
ํ์ด์ฌ์ ๋งค๋ ฅ์ด ๋๊ปด์ง์๋์? ์ ๋ ์์ง ํ์ด์ฌ์ค๋ฌ์ด ์ฝ๋ฉ์ ์๋ชปํ์ง๋ง ํ๋์ฉ ์ก๊ธฐ์ ์ ๋๋ ค ๊ฐ๊ณ ์์ต๋๋ค.
๊ทธ๋ด ๋๋ง๋ค ์ค! ๋ด๊บผ๊ฐ ๋์๊ตฌ๋! ์ ์ฉํ๋ค? ๊ทธ๋ฐ ๋๋์ด ๋ค ๋๋ง๋ค ๋ธ๋ก๊ทธ์ ์ ์ต๋๋ค.
๊ฐ๋ฐ์ํ๋ ์ฌ๋๋ค์ด ํ๋ก๊ทธ๋๋ฐ ๊ณต๋ถํ ๋๋ 1๊ฐ๋ถํฐ ๋ณด๋ฉด์ ํ๋๊ฒ ์๋๋ผ ๋ฌด์ธ๊ฐ๋ฅผ ๊ณํํ๊ณ ๋ง๋ค๋ฉด์
์ฝ๋ฉ์ ๊ณต๋ถํ๋ผ๊ณ ํฉ๋๋ค.
์ ๋ C๋ก ์์ํ๊ณ , ์ด๋ ค์ ์ฝ๋ฉ์ ๋ณ๋ก ์ข์ํ์ง ์์์ต๋๋ค.
๋น์ฐํ ๋ฌด์ธ๊ฐ๋ฅผ ๋ง๋๋๊ฑธ ๊บผ๋ คํ์ต๋๋ค.
ํ์ง๋ง ํ์ด์ฌ์ ๋ง์น ์ํตํ๋ฏ์ด ๋น์ ๊ณต์๋ค๋ ๋ง๋ค์ด๊ฐ๋ฉด์ ํ ์ ์์ต๋๋ค.
์ฌ๋ฌ๋ถ๋ค๋ ํ๋ด์๊ธธ ๋ฐ๋๋๋ค