본문 바로가기

728x90

Python

[01. Django] 003. 홈 화면 Django로 만든 Website의 홈 화면을 추가해보자. View는 app을 Django에서 만들어야 보인다. 하지만 Home화면 하나를 추가하고 싶다. View파일을 자체적으로 만들어서 연결시키면 된다. 먼저 conf/setting.py 안에 아래 코드를 추가하여 html 파일을 연동할 폴더를 연결시켜준다. import os import는 윗부분에 추가해주고 TEMPLATES 부분을 찾아서 ‘DIRS’를 아래와 같이 바꾼다. TEMPLATES = [ { 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': [BASE_DIR, os.path.join(BASE_DIR, 'templates'),], .. 더보기
[01. Django] 002. 설치 및 프로젝트 생성 Django의 설치는 pip로 가능하다. pip install django (venv) D:\YOne_Labs>pip install djangoCollecting django Using cached Django-4.2.13-py3-none-any.whl (8.0 MB)Collecting sqlparse>=0.3.1 Using cached sqlparse-0.5.0-py3-none-any.whl (43 kB)Collecting asgiref=3.6.0 Using cached asgiref-3.8.1-py3-none-any.whl (23 kB)Collecting tzdata Using cached tzdata-2024.1-py2.py3-none-any.whl (345 kB)Collecting typi.. 더보기
[01. Django] 001. Django란 Django는 Python으로 작성된 고수준의 웹 프레임워크로, 신속한 개발과 깨끗하고 실용적인 설계를 장려한다. Django는 웹 개발에 필요한 거의 모든 기능을 자체적으로 제공한다. 다음은 Django의 주요 특징과 개념에 대한 설명이다. 1.  ORM (Object-Relational Mapping)Django는 데이터베이스와 상호 작용하기 위한 ORM을 제공한다. 이를 통해 SQL 쿼리를 직접 작성하지 않고도 데이터베이스 조작이 가능하다. 2. MTV 아키텍처 (Model-Template-View)Django는 전통적인 MVC (Model-View-Controller) 패턴을 약간 변형한 MTV 패턴을 사용한다. - Model: 데이터베이스 스키마를 정의하고 데이터베이스와 상호 작용- Templa.. 더보기
[01. Python] 014. 정규 표현식(Regular Expressions) 정규 표현식(Regular Expressions)은 문자열을 처리할 때 사용한다. 줄여서 정규식이라고 한다. 이 표현을 배우면 문자열을 아주 효율적으로 다룰 수 있는 파워풀한 기술을 가지게 된다. 정규식을 배우기 위해서는 메타 문자(Meta Characters)에 대해 알아야 한다. . ^ $ * + ? { } [ ] \ | ( ) 파이썬은 정규 표현식을 지원하는 라이브러리인 re(Regular Expression) 모듈이 있다. 이를 사용하여 정규식에 대해 알아보자. re는 크게 4가지 함수를 제공한다. Method 설명 match() 문자열의 처음부터 정규식과 매치되는지 조사, 객체로 반환 search() 문자열 전체를 검색하여 정규식과 매치되는지 조사, 객체로 반환 findall() 정규식과 매치되.. 더보기
[01. Python] 013. 예외처리 코딩을 하다보면 수 많은 에러가 발생한다. 어떤 에러가 발생했는지 쉽게 파악이 가능해야 디버깅 하기도 편하다. 예외처리를 통하여 에러를 잘 핸들링한다면 보다 유연한 프로그램 개발이 가능할 것이다. 에러에 대한 예외처리의 기본형태는 다음과 같다. try: 1 / 0 except ZeroDivisionError as e: print(e) except IndexError as e: print(e) else: print('오류없음') finally: print('예외처리') 결과 값 division by zero 예외처리 try구문의 실행코드가 에러가 발생하면 except구문에서 처리한다. 위의 코드에서는 1 / 0을 하여 0으로 나눈 에러(ZeroDivisionError)가 발생했다. 이 에러가 발생하면 에러.. 더보기
[01. Python] 012. 클래스 클래스란 함수의 모음이다. 재사용 가능성이 높은 함수를 같은 성격별로 클래스에 넣으면 코딩을 효율적으로 할 수 있다. 예를 들면 계산기에는 더하기, 빼기, 나누기 등 많은 기능이 있다. 이러한 기능은 계산기마다 동일하며 사람마다 계산기를 1개씩 가지고 있으면 계산기의 기능을 재사용하는 사람이 많은 것이다. 이러한 계산기를 클래스로 만들면 다음과 같다. class Calculator: def __init__(self, init): self.result = init def add(self, num): self.result += num def sub(self, num): self.result -= num def mul(self, num): self.result *= num def div(self, num): .. 더보기
[01. Python] 011. 함수 함수란 어떤 기능(function)을 하는 것이다. 반복적인 작업이 있다면 함수화 시켜놓으면 재사용이 가능해서 코드의 효율성을 높여준다. 함수의 기본적인 형태는 다음과 같다. def sum(a, b): return a+b c = sum(1, 2) print(c) 결과 값 3 입력하는 파라메터의 기본값을 설정할 수도 있다. 해당하는 파라메터의 값을 입력하지 않으면 기본값으로 자동 할당된다. def sum(a, b=1): return a+b c = sum(1) print(c) 결과 값 2 입력하는 파라메터의 수가 가변적이면 어떻게 입력해야 할까? *args를 이용하면 된다. def sum(*args): sum = 0 for i in args: sum += i return sum c = sum(1, 2, 3).. 더보기
[01. Python] 010. 제어문 – while while은 반복문이다. for와 다른 점은 조건이 거짓이 될 때까지 무한 반복한다는 점이다. a = 0 while a < 5: print(a) a = a + 1 결과 값 0 1 2 3 4 while안에서도 continue를 사용할 수 있다. a = 0 while a < 5: a = a + 1 if a % 2 == 0: continue print(a) 결과 값 1 3 5 그리고 while문을 강제로 빠져나오기 위해서는 break를 사용하면 된다. a = 0 while a < 5: a = a + 1 if a % 2 == 0: break print(a) 결과 값 1 더보기
[01. Python] 009. 제어문 – for for는 반복문이다. 리스트 안에 있는 값을 한 번씩 돌아가며 조회한다고 생각하면 쉽다. 다음을 보면 쉽게 이해된다. a = [1, 2, 3] for i in a: print(i) 결과 값 1 2 3 for문은 다양하게 활용된다. range함수를 통해 리스트를 생성 후 활용하는 것이 기본적이다. for i in range(0, 5): print(i) 결과 값 0 1 2 3 4 그리고 튜플을 활용할 수도 있다. a = [(1, 2), (2, 3)] for (i, j) in a: print(i, j) 결과 값 1 2 2 3 그리고 zip이란 함수를 이용해 두개 이상의 리스트를 동시에 반복하는 것도 가능하다. a = [1, 2, 3] b = ['a', 'b', 'c'] c = [4, 5, 6] for i, j.. 더보기
[01. Python] 008. 제어문 – if if는 조건문이다. 해당 조건에 해당하면 실행하는 것이다. 형태는 다음과 같다. if x > y: print('x가 y보다 크다') elif x >= y: print('x가 y보다 크거나 같다') elif x < y: print('x가 y보다 작다') elif x 3 else False print(result) 결과 값 False 더보기
728x90