1) ํจ์
- ์ฐ๋ฆฌ๊ฐ ํ๋ก๊ทธ๋๋ฐ์ ์ข ๋ ์ฝ๊ฒ ํ ์ ์๋๋ก ํด์ค๋ค
- ์ฒ์๋ถํฐ ํ์ด์ฌ์์ ์ ๊ณตํด์ฃผ๋ ๊ฑฐ์ ์๊ณ , ์ฐ๋ฆฌ๊ฐ ํ์๋ก ํ๋ ๊ฒ์ ์ง์ ๋ง๋ค์ด ์ธ ์ ์๋ค
# len () : ๋ฆฌ์คํธ์ ํฌ๊ธฐ๋ฅผ ์๋ ค์ฃผ๋ ํจ์ -> ํ์ด์ฌ์์ ์ ๊ณตํ๋ ๊ฒ
a_list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
len(a_list) # 10
# ์ ์๋ฅผ ์
๋ ฅ๋ฐ๊ณ , ๊ทธ ์๊ฐ ๋ช ์๋ฆฌ ์ซ์์ธ์ง ์ถ๋ ฅํ๋ ํจ์ numOfDigits () ๋ง๋ค๊ธฐ
def numOfDigits(num):
print(len(str(num)))
++) ์ฐ์ต๋ฌธ์
# ๋ด ํ์ด
for i in range (2, 10):
for j in range (1,10):
# print (f"{i} * {j} = {i * j}"
print(i, "*", j, "=", (i*j))
# ๋ชจ๋ฒ ๋ต์
def multi(m):
for n in range(1, 10):
print(f'{m} * {n} = {m*n:2d}')
if __name__ == '__main__':
for i in range(2, 10):
multi(i)
print()
++) map ํจ์
- ํจ์์ ๋ฆฌ์คํธ๋ฅผ ์ธ์๋ก ๋ฐ๊ณ
- ๋ฆฌ์คํธ๋ก๋ถํฐ ์์๋ฅผ ํ๋์ฉ ๊บผ๋ด์ ํจ์๋ฅผ ์ ์ฉ์ํจ ๋ค์
- ๊ฒฐ๊ณผ๋ฅผ ์๋ก์ด ๋ฆฌ์คํธ์ ๋ด์์ค๋๋ค
map(ํจ์, ๋ฆฌ์คํธ)
list(map(lambda x : x ** 2, range(5)))
[0, 1, 4, 9, 16]
++) reduce ํจ์
- ์ํ์ค(๋ฌธ์์ด, ๋ฆฌ์คํธ, ํํ) ์ ์์๋ค์ ๋์ ํด์ ํจ์์ ์ ์ฉ์ํต๋๋ค
reduce(ํจ์, ์ํ์ค)
from functools import reduce
reduce(lambda x, y: x + y, [0, 1, 2, 3, 4]) #10
++) filter ํจ์
- ์์๋ค์ ํจ์์ ์ ์ฉ์์ผ์ ๊ฒฐ๊ณผ๊ฐ ์ฐธ์ธ ๊ฐ๋ค๋ก ์๋ก์ด ๋ฆฌ์คํธ๋ฅผ ๋ง๋ค์ด์ค๋๋ค
filter(ํจ์, ๋ฆฌ์คํธ)
list(filter(lambda x: x < 5, range(10)))
[0, 1, 2, 3, 4]
2) ๋ฐํ (return) ๋ฌธ
- ํจ์์ ๊ฐ์ ๋๋ ค์ฃผ๊ธฐ ์ํด return์ด ์ฌ์ฉ๋๋ค
# ๋งค๊ฐ๋ณ์๋ก ๋ฐ์ ์ ์๋ฅผ ํ๊ตญ์ด๋ก ํ๊ธฐํ ๋ฌธ์์ด์ ๋ฐํํ๋ ํจ์ korean_number() ๋ฅผ ์ ์
# ๋จ, ๋งค๊ฐ๋ณ์๋ 1์ด์ 10์ดํ์ ์ ์
def korean_number(num):
if num == 1:
return '์ผ'
elif num == 2:
return '์ด'
elif num == 3:
return '์ผ'
elif num == 4:
return '์ฌ'
elif num == 5:
return '์ค'
elif num == 6:
return '์ก'
elif num == 7:
return '์น '
elif num == 8:
return 'ํ'
elif num == 9:
return '๊ตฌ'
elif num == 10:
return '์ญ'
3) ์ง์ญ๋ณ์, ์ ์ญ๋ณ์
- ์ง์ญ๋ณ์ : ํจ์ ์์์ ๋ง๋ค์ด์ง ๋ณ์, ํจ์๊ฐ ํธ์ถ๋๋ฉด ๋ง๋ค์ด์ ธ์, ํจ์์ ์คํ์ด ๋๋ ๋ ํจ๊ป ์์ด์ง๋ค
- ์ ์ญ๋ณ์ : ํจ์ ๋ฐ์์ ๋ง๋ค์ด์ง ๋ณ์ , ํจ์์ ๊ด๊ณ์์ด ํญ์ ์ ์ง๋๋ค
=> ๊ทธ๋ผ ํญ์ ์ ์ง๋๋ ์ ์ญ ๋ณ์๋ฅผ ์ฐ์ง ๋ญํ๋ฌ ์ง์ญ ๋ณ์๋ฅผ ์ฐ๋??
์ ์ญ๋ณ์๋ ํ๋ก๊ทธ๋จ์ด ๋ณต์กํด์ง์๋ก ๋ค๋ฅธ ํจ์๋ค ๋๋ฌธ์ ๋ณ์์ ๊ฐ์ด ๋ฐ๋์ด๋ฒ๋ฆฌ๋ ๊ฒฝ์ฐ๊ฐ ์ข ์ข ์์ด์ ํ์์ ๋ฐ๋ผ ์ง์ญ๋ณ์์ ์ ์ญ๋ณ์๋ฅผ ๊ณจ๋ผ ์ฐ๋ ๊ฒ์ด ์ข๋ค.
- ํจ์ ์์์ ์ ์ญ๋ณ์๋ฅผ ๋ง๋๋ ๋ฐฉ๋ฒ๋ ์๋ค : ์ ์ญ๋ณ์(global)๋ก ์ฌ์ฉํ๊ฒ ๋ค๊ณ ๋ช ์
def e_is_10():
global e # ์ ์ญ๋ณ์
e = 10
print('e ๊ฐ์ ', e, '์
๋๋ค')
4) ๋๋ค
- ๋๋ค ํ์์ ์ธ๊ณต์ง๋ฅ ๋ถ์ผ๋ AutoCAD ๋ผ๋ ์ค๊ณ ํ๋ก๊ทธ๋จ์์ ์ฐ์ด๋ Lisp ์ธ์ด์์ ๋ฌผ๋ ค๋ฐ์๋ค
- ํจ์๋ฅผ ๋ฑ ํ์ค๋ก ๋ง๋ค์ด์ค๋ค
lambda ๋งค๊ฒจ๋ณ์ : ํํ์
(lambda x, y : x+y) (10, 20) # 30
++) str.strip์ผ๋ก ๋ฌธ์์ด ์๋ค์ ๊ณต๋ฐฑ์ ์ ๊ฑฐํ ์ ์๋ค
>>> str.strip(" I am a boy. ")
'I am a boy.'
'python' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
์ฌ๊ทํจ์๋ก ๋ถ๋ถ์งํฉ ๋ง๋ค๊ธฐ... (0) | 2023.08.14 |
---|---|
Python 2๏ธโฃ ์ ์ด ๊ตฌ์กฐ (0) | 2023.07.16 |
Python ์์ํ๊ธฐ ๐ถโโ๏ธ๐ถโโ๏ธ (4) | 2023.07.16 |
Python tkinter ๋ค์ด๊ฐ๊ธฐ(ํ์ด์ง ๋ง๋ค๊ธฐ) (2) | 2023.03.14 |
vs์ฝ๋&ํ์ด์ฌ์ ํ์ฉํ ๊ฐ๋จํ ์ฝ๋ ์์ฑํ๊ธฐ(์์ ๊ตฌํ๊ธฐ, ๊ตฌ๊ตฌ๋จ) (0) | 2023.03.08 |