기초문법


Django를 사용하기 위해서는 기본적으로 Python 에 대한 이해가 필요합니다. 프로그래밍의 언어의 가장 기본이랄 수 있는 세 가지 문법구조인 변수의사용, 조건문, 반복문과 함께 함수와, 클래스의 사용법을 알아보겠습니다.

가.변수 선언 및 사용

#1. Python 은 변수의 타입이 없다
hong = 111

# 2. 문자변수의 입력은 쌍따옴표 또는 외따옴표를 앞뒤로 사용한다
words = "I am Python"

# 3. 동일한 변수명에 다른타입의 값을 입력할 수 있다.
words = 157 # 문자열 "I am Python" 를 입력했다가 다시 같은 변수에 숫자 157 입력

# 4. 문장의 끝은 줄바꿈으로 처리한다.
var_a = 145
var_b = "Hello"
var_c = "123"

# 5. 기본형에 대한 자동 형변환은 지원하지 않는다
result_char = str(var_a) + var_b # 숫자 var_a 를 문자열로 변경한 후  문자열 var_b와 더해준다.
result_num = var_a + int(var_c) # 문자열 "123" 을 숫자 123 으로 변경

# 6. 결과값 출력
print(result_char) # 결과 : 145Hello
print(result_num)  # 결과 : 268

# 7. 문자열 곱하기 (곱한숫자만큼 문자열을 반복해서 더한다음 리턴해준다)
print(var_b * 3) # 결과 : HelloHelloHello

# 8. 거듭제곱
print(var_a ** 3) # 결과 : 3048625 = 145 * 145 * 145

나. 조건문

var_a = 15

# 1.1. 조건문은 if 로 시작하고 조건문 블럭은 : (콜론) 과 함께 다음줄부터 시작합니다.
if var_a > 15 :
    # 1.2. 조건문에 해당하는 블럭은 들여쓰기로 작성합니다.
    print('var_a 는 15보다 큽니다')
# 2. 새로운 if 문은 들여쓰기를 다시 시작합니다. elif 는 타 언어의 else if 와 같습니다. 블럭은 : 과 함게 다음줄부터 시작합니다.
elif var_a < 15 :
    print('var_a는 15보다 작습니다')
# 3. else 구문도 줄끝에 : 을 입력해야 합니다. 
else :
    print('var_a는 15 입니다')

다.반복문

count = 0

# 1. while [조건식] - 조건식이 만족할 때 까지 반복한다.
#    조건식 = count 가 10보다 작을때 블럭 실행
while count < 10 :
    # 1.1. count 를 출력
    print("while count=" + str(count))
    # 1.2. count 가 0 에서 시작해서 반복할때마다 1씩 증가한다. 10번 반복하고 while문을 빠져나간다.
    count = count + 1

# 2. for 개별요소 in 요소들 - 특정 요소들의 범위내에서 개별요소 단위로 반복하고자 할 때 사용한다.
# 2.1. 문자열 선언
chars = "abcdefg"
# 2.2. 문자열 abcdefg 를 한문자씩 반복하면서 문자요소 하나하나를 꺼내서 c 변수에 담는다.
for c in chars :
    # 2.3. 문자 한개단위씩 출력
    print("for 1 :"+c) 

# 3.1. 문자열로 된 리스트(일종의 배열) 선언
array = ["Hello ", "I ", "am ", "Python"]
# 3.2. 4개의 문자열을 가진 리스트를 반복하면서 문자열단위로 char 변수에 담는다
for char in array :
    # 3.3. char 문자열 단위로 출력  
    print("for 2 :"+char)

# 4.1. 3.2와 동일
for chars in array :
    # 4.2 char 에 담은 문자열을 문자 하나씩 꺼내서 c 변수에 담는다
    for c in chars :
        # 4.3 문자 하나씩 출력
        print("for 3 :"+c)

라.함수 정의 및 사용

var_a = 145
var_b = 13

# 1. 함수의 선언
def sumNumbers(a,b) : # 2. 블럭의 시작은 : (콜론) 
    return a + b
# 3. 블럭의 구분은 들여쓰기

# 4. 들여쓰기가 끝나면 새로운 블럭이 시작된다
def multiNumbers(a,b) :
    return a * b

def complex(a,b) :
# --- complex 함수 블럭 시작
    com_a = sumNumbers(a,b)
    com_b = multiNumbers(a,b)
    # 5. 함수 내에서 if 문과 같은 새로운 블럭이 필요할 때에도 : 으로 시작하고 들여쓰기를 해야한다.
    if com_a > com_b :
        return com_a
    else :
        return com_b
# --- complex 함수 블럭 종료

# 7. 결과 확인
print(sumNumbers(var_a,var_b))   # 결과 : 158
print(multiNumbers(var_a,var_b)) # 결과 : 1885

print(complex(5,7))  # 결과 : 35
print(complex(5,-7)) # 결과 : -2

마.클래스 정의 및 사용

# 1. class 선언
class ClassName():
    # 1.2. 멤버변수
    member = 0
    # 1.3. 멤버함수
    #     * Python 만의 특징인데 첫번째 인자로 객체자신인 self를 받는다. 따라서 멤버변수는 self.멤버변수의 형태로 사용할 수 있다.
    def memberAdd(self, a) :
        self.member = self.member + a
    # 1.4. 멤버변수를 출력하는 함수
    def memberPrint(self) :
        print(self.member)

# 2. class 사용
clazz = ClassName()
# 2.2 멤버함수 사용
#    * 멤버함수를 사용할 때 첫번째 인자인 self는 입력하지 않는다.
clazz.memberAdd(5)
clazz.memberAdd(5)
clazz.memberAdd(5)
# 2.3 멤버함수를 통한 출력
clazz.memberPrint()

바.모듈

Python은 다른 파일에 작성된 클래스나 함수에 접근하기 위해서 모듈이라는 개념을 지원합니다. 타 언어의 import 와 유사하게 사용할 수 있습니다. 먼저 아래와 같이 클래스 한개와 함수 한개를 가진 mod.py 파일을 생성합니다.

  • mod.py
# 1. class 선언
class ClassName():
    member = 0
    def memberAdd(self, a) :
        self.member = self.member + a
    def memberPrint(self) :
        print(self.member)

# 2. 함수선언
def justAdd(a,b) :
    return a + b

모듈을 사용할 파일에서 import 파일명 (.py 는 제외) 형태로 모듈을 불러서 사용할 수 있습니다.

  • main1.py
import mod

clazz = mod.ClassName()
clazz.memberAdd(5)
clazz.memberAdd(5)
clazz.memberPrint()

print(mod.justAdd(3,5))

또 한가지 방법은 from 파일명 import 클래스명(또는 함수명) 형태로 직접 불러서 사용할 수 있습니다.

  • main2.py
from mod import ClassName
from mod import justAdd

clazz = ClassName()
clazz.memberAdd(5)
clazz.memberAdd(5)
clazz.memberPrint()

print(justAdd(3,5))

results matching ""

    No results matching ""