7_day.ipynb
0.01MB

 

 

 
 

파이썬 함수 기본 예제

In [1]:
result = 0
def adder(num):
    global result
    result += num
    return result

print(adder(3))
print(adder(4))
 
3
7
In [5]:
result1 = 0
result2 = 0

def adder1(num):
    global result1
    result1 += num
    return result1

def adder2(num):
    global result2
    result2 += num
    return result2
print(adder1(3))
print(adder1(4))
print(adder2(3))
print(adder2(7))
print(result1)
print(result2)
 
3
7
3
10
7
10
 

self는 본인 자신을 가리키는 것 이다.

In [24]:
class Calcurator:
    def __init__(self):
        self.result=0
        
    def adder(self, num):
        self.result+=num
        return self.result
    def sub(self, num):
        self.result -=num
        return self.result
In [25]:
cal1 = Calcurator()
In [26]:
cal1.adder(4)
Out[26]:
4
In [27]:
cal2 = Calcurator()
In [28]:
cal2.adder(3)
Out[28]:

 

3
In [29]:
cal1.sub(2)
Out[29]:
2
 

클래스 기본 구조

In [30]:
class Student:
    name = "홍길동"
    def info(self):
        print("제 이름은 "+self.name + "입니다.")
In [33]:
inst = Student()
inst.name
Out[33]:
'홍길동'
In [34]:
inst.info()
 
제 이름은 홍길동입니다.
 
init(self) 는 생성자이다.

생성자: 객체가 생성될때 수행되는 메소드

 

In [ ]:
class Student:
    name = "홍길동"
    def info(self):
        print("제 이름은 "+self.name + "입니다.")
 

University 클래스는 Student 클래스로부터 상속 받고있다.

In [40]:
class University(Student):
    major = "컴퓨터공학"
    name="이순신"
    
    def intro(self):
        print("제이름은 "+self.name+"이고 전공은"+self.major+"입니다.\n")
In [41]:
inst2=University()
In [37]:
inst2.major
Out[37]:
'컴퓨터공학'
In [38]:
inst2.name
Out[38]:
'홍길동'
 

부모 클래스의 변수 name을 University 자식 클래스에서 재정의(오버라이딩) 하였다.

In [42]:
inst2.name
Out[42]:
'이순신'
 

응용 예제

In [44]:
class Calculator():
    def __init__(self):
        self.rsult=0
    def add(self, num1, num2):
        self.result = num1 + num2
        print(self.result)
In [47]:
class UpgradeCalculator(Calculator):
    def __init__(self):
        self.result = 0
    def minus(self, num1, num2):
        self.result = num1 - num2
        print(self.result)
In [48]:
cal1 = UpgradeCalculator()
cal1.add(1,2)
cal1.minus(3,1)
 
3
2
In [66]:
class exam():
    korean, english, math = 0, 0, 0
    def __init__(self):
        self.result=0
        
    def f_input(self,input_korean, input_english, input_math):
        korean = input_korean
        english = input_english
        math = input_math
        self.result = korean + math + english
        
    def f_sum(self):
        print(self.result)
        
    def f_avg(self):
        print(self.result/3)
        
    def f_print(self):
        print("총점:", self.result, "평균:",self.result/3)
        

 

In [67]:

 

exam1 = exam()
exam1.f_input(10, 20, 30)
exam1.f_sum()
exam1.f_avg()
exam1.f_print()
 
60
20.0
총점: 60 평균: 20.0

 

+ Recent posts