매개변수와 인수는 혼용해서 사용하는 용어입니다 매개변수는 함수에 입력으로 전달된 값을 받는 변수, 인수는 함수를 호출할 때는 전달하는 값을 의미한다
입력 값이 없는 함수는 존재한다
리턴되는 값이 없는 함수도 존재한다
def all (*args):#*을 넣어주면 입력받는 모든값을 전부 튜플로 바꿔준다
result = 0
for i in args:
result = result + i # *args에 입력받은 모든 값을 더한다
return result
키워드 매개변수는 *을 두개 붙여준다 (***kwargs)
def print_kwargs(**kwargs):
print(kwargs)
print_kwargs(a=1)
{'a' : 1}
print_kwargs(name='foo', age=3)
{'age': 3, 'name': 'foo'}
함수의 리턴 값은 두 개가 될 수가 없다
def say_myself(name, age, man=True):
print("나의 이름은 %s 입니다"% age)
print("나이 %d살입니다"% age)
if man:
print("남자")
else:
print("여자")
say_myself("장상희",10,"man")
global함수는 쓰지 않는 것이 좋다
슬라이싱을 이용한 글자 역순 함수
def print_reverse(A):
print(A[::-1])
print_reverse("python")
my_dict = {"10/26": [100,130,100,100],"10/27": [10,12,10,11]}
def pvbk (my_dict,key):#key는 리스트에 있는 "10/26","10,27"두 리스트를 불러준다
print(my_dict[key])#리스트 안에 있는 리스트를 꺼내온다
pvbk (my_dict, "10/26")
#연봉을 입력받아 월급을 출력해준다
def A (B):
B = B/12
print(B)
A (12000000)
찐 정답
def calc_monthly_salary(annual_pay) :
monthly_pay = int(annual_pay / 12)
return monthly_pay
append 리스트에다가 더해주는 함수
def pickup_even(items):
result = []
for item in items:#items를 item에 넣어준다
if item % 2 == 0:#item에 들어간 리스트를 순차적으로 돌려서 짝수를 찾는다
result.append(item)#위 조건을 만족하면 append함수를 써서 item에 있는 수를 result에 옮겨준다
return result #답 리턴한다
def convert_int(string):#문자열을 입력받음
return int(string.replace(',',''))
convert_int("1,234,567")#replace함수는 문자열에서 특정 부분을 다른 문자열로 바꾸는 데 사용된다.
#old: 바꾸고 싶은 기존 문자열 new: 새로 대체할 문자열 count: 횟수를 제한 할수 있다
클래스 생성
from ast import For
class FourCal:
def setdata(self,first,second):#self 데이터가 덮어쒸워지지 않게 다른 객체라는걸 정의해줌
self.first = first
self.second = second
def add (self):
result = self.first + self.second
return result
def mul (self):
result = self.first * self.second
return result
def sub (self):
result = self.first - self.second
return result
def div (self):
result = self.first / self.second
return result
a=FourCal()#인스턴스 생성
a.setdata(5,2)#setdata Self(a) ,first(5),second(3)로 설정해준다
a.add()#함수 실행
class FourCal:
def __init__(self,first,second):#인스턴스 생성과 self,first,second를 동시에 채워줄수있다
self.first = first
self.second = second
def add (self):
result = self.first + self.second
return result
def mul (self):
result = self.first * self.second
return result
def sub (self):
result = self.first - self.second
return result
def div (self):
result = self.first / self.second
return result
class Human:#클래스 정의
def __init__(self):
print("응애응애")
a=Human()