- 루프 

#루프
#1
sum = 0 
for i in range(1, 10+1) : 
    sum += i 
#2 
sum2 = sum (i for i in range(1,10+1))
#3 
sum3 = sum (range(1,10+1))

 

- 제네릭 프로그래밍

제네릭이란 파라미터의 타입이 나중에 지정되게 하여 재활용성을 높이는 프로그래밍 스타일

#제네릭 프로그래밍 
#1
def are_equal(a,b) : 
    return a==b
are_equal(10, 10.0)
#2** :명시타입
from typing import TypeVar

T = TypeVar('T')
U = TypeVar('U')

def are_equal(a:T, b:U) ->bool :
    return a == b

are_equal(10, 10.0)

 

- 배열반복 

문자열 배열(파이썬에서는 리스트)을 반복하며 엘리먼트 출력

#배열반복
foo = ['A','B','C']
for f in foo :
    print(f)

 

- 구조체 

#구조체
#1 : namedtuple
from collections import namedtuple
MyStruct = namedtuple ("MyStruct", "field1 field2 fiedl3")
m = MyStruct("foo", "bar", "baz ")

#**2 : dataclass python 3.7+ 지원.
from dataclasses import dataclass

@dataclass
class Product:
    weight : int = None
    price : float = None

apple = Product()
apple.price = 10 

 

- 클래스 

#클래스
from dataclasses import dataclass

@dataclass
class Rectangle:
    weight : int 
    height : int

def area(self) : 
    return self.width * self.height

rect = Rectangle(3,4)
print(rect.area())

+ Recent posts