일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- tensorflow
- 크롤링(crawling)
- Deep Learning
- python기초
- 머신러닝
- Database
- 딥러닝
- 회귀모델
- 예측
- sklearn
- 시각화
- 데이터 가공
- 해석
- 데이터 수집
- 선형회기모델
- 데이터베이스
- pythone
- python
- pandas
- 알고리즘기초
- keras
- 데이터
- HeidiSQL
- 파이썬
- MariaDB
- 데이터 분석
- SQL예제
- 데이터전처리
- 훈련
- 정확도
- Today
- Total
코딩헤딩
python 기초 13 (함수) 본문
1. 기본 구조
숫자의 연산
def twice(x):
return x*2
a = 2
b = 3
print(twice(a))
print(twice(b))
결과 : 4
6
문자
def hello(x):
print('hello', x)
hello('python')
결과 : hello python
2. zip/ unzip
def add_minus(x, y):
a = x + y
b = x - y
return a, b
add_minus(5, 7)
결과 : (12, -2)
print(type(add_minus(5, 7)))
결과 : <class 'tuple'>
a, b = add_minus(7, 8)
print(a, b)
결과 : 15 -1
print(type(add_minus(7, 8)))
결과 : <class 'tuple'>
더하기, 빼기 = add_minus(7, 8)
print(더하기, 빼기)
결과 : 15 -1
결과값 = add_minus(7, 8)
print(결과값[0], 결과값[1])
결과 : 15 -1
zip 될 때는 자동으로 tuple형식으로 출력된다
각각의 값의 위치에 따라 파이썬 인터프리터가 위치에 맞는 값을 알아서 넣거나 빼준다.
그 예로 크게 (5) 가지가 있다.
1. 위치 매개변수를 사용하는 함수
def function1(a,b):
print(a,b)
function1(1,2)
결과 : 1 2
각각의 값과 위치가 매칭된다.
2. 기본값(default) 정의 매개변수를 사용하는 함수
def function2(a,b=3):
print(a,b)
function2(1)
결과 : 1 3
하나의 값과 그 위치가 매칭되면 나머지 값도 자동으로 매칭된다.
3. 키워드 정의 방식
def function3(a,b):
print(a,b)
function3(a=3,b=5)
function3(a=6,b=4)
결과 : 3 5
6 4
각각의 키워드와 값이 매칭된다.
4. 가변형 매개변수를 사용한 함수(*args)
def function4(*args):
print(args)
function4(1,2,3)
function4(1,2,3,6,9)
결과 : (1, 2, 3)
(1, 2, 3, 6, 9)
전달할 값이 몇개 일지 모를 때 사용하는 방식
5. 가변 키워드 매개변수를 사용한 함수
def function5(**args):
print(args)
function5(a=1,b=2,c=3)
function5(a=1,b=2,c=3,d=6,e=9)
dic = {"a":33, "b":55}
function5(a=33,b=55)
function5(**dic)
결과 : {'a': 1, 'b': 2, 'c': 3}
{'a': 1, 'b': 2, 'c': 3, 'd': 6, 'e': 9}
{'a': 33, 'b': 55}
전달할 값이 몇개 일지 모를 때 사용하는 방식
이어서 함수의 범위(scope)
3. 변수의 범위 (scope)
x = 1
def twice(x):
x = x*2
return x
twice(x)
결과 : 2
b = twice(x) #<- 실행을 해라
c = twice #<- 함수자체를 넘기는것
*소괄호가 있고 없고 주의!!
def sum_many(*args): # * -> 여러개의 데이터 가져옴
sum = 0
for i in args:
sum += i
return sum
sum_many(1, 2, 3, 4, 5, 7, 8, 9, 10)
결과 : 49
4. Lamda 함수
*기본구조
def 함수이름(파라미터1, 파라미터2):
return 결과값
a = lambda x: x*2
a(2)
결과 : 4
def y(x):
return x*2
y(2)
결과 : 4
람다 함수를 쓰면 코드를 더 간결하게 쓸 수 있다.
'python' 카테고리의 다른 글
python 알고리즘 기초5 제너레이터(Generator)+예제 (0) | 2023.11.16 |
---|---|
python 알고리즘 기초4 이터레이터(Iterator)+예제 (0) | 2023.11.16 |
python 알고리즘 기초3 데코레이터(Decorator) (1) | 2023.11.15 |
python 알고리즘 기초2 (클로저함수) (1) | 2023.11.14 |
python 알고리즘 기초1 (유니코드, 클로저함수 기초) (1) | 2023.11.14 |