Python 21

[Django] Model

Model : 저장된 데이터베이스의 구조 장고는 Model을통해 데이터에 접근하고 조작한다. 이러한 Model은 사용하는 데이터들의 필수 필드들과 동작들을 포함한다. 일반적으로 각각의 모델은 하나의 데이터베이스 테이블에 Mapping한다. Model class 1개 = 데이터베이스 테이블 1개 Model 생성 실습 1. project를 생성한 후에, App을 생성 -> settings에 등록한다 2. App / models.py를 수정 원하는 컬럼과 필수 조건을 명시한다. from django.db import models # Create your models here. class myapp(models.Model): title = models.CharField(max_length=10) content ..

django 2023.03.25

[Django] Template Language

Django Template : 장고에서 데이터를 표현하는 도구, 표현에 관련된 로직 Django Template System : 데이터 표현을 제어하는 도구이자 표현에 관련된 로직을 담당 Django Template Language(DTL) : Django template에서 사용하는 built-in template system 조건, 반복, 변수 치환, 필터 등의 기능을 제공한다. ( 단, python 코드로 실행되는 것은 아님 ) 프로그래밍적 로밍이 아니라, 프레젠테이션을 표현하기 위한 것 1. Variable ( 변수 ) 변수명은 영어, 숫자, _ 구성 가능 밑줄로 시작 X 공백 X 구두점 X .을 사용하여 변수 속성에 접근이 가능하다. render()의 3번째 인자로 딕셔너리 형태로 넘겨준다. ..

django 2023.03.15

[Django] 시작하기 / 가상환경 / project / App 생성하기

프레임워크(Framework) : 서비스 개발에 필요한 기능들을 미리 구현해서 모아 놓은 것 Framge(뼈대, 틀) + Work(일) 제공받은 도구들과 뼈대, 규약을 가지고 무언가를 만드는 일 특정 프로그램을 개발하기 위한 여러 도구들과 규약을 제공하는 것 소프트웨어 프레임워크(Software Framework) : 복잡한 문제를 해결하거나 서술하는데 사용되는 기본 개념 구조 웹 서비스 개발에 있어서 모든 것들을 하나부터 열까지 직접 개발할 필요 X 내가 만들고자 하는 logic에 집중해 개발할 수 있다. 소프트웨어의 생산성과 품질을 높힐 수 있음 Django : 서버를 구현하는 웹 프레임워크 ( python으로 작성 ) 1. Project collection of apps 앱의 집합 여러 앱 포함 가..

django 2023.03.14

[자료구조] 트리(Tree) - python

트리란 ? 비선형 자료구조로, 원소들간에 1:n 관계, 계층 관계를 가진다. 상위 원소에서 하위 원소로 확장되는 구조를 갖고 있다. 트리의 구성요소 1. 노드(node) : 트리의 원소 2. 루트(root) : 트리의 시작 노드 3. 간선(edge) : 노드를 연결하는 선 / 부모 노드와 자식 노드를 연결한다. 4. 차수(degree) : 노드에 연결된 자식 노드의 수 5. 높이 (1) 노드의 높이 : 루트에서 마지막 노드에 이르는 간선의 수 / 노드의 레벨 -> B의 높이는 1 / F의 높이는 2 (2) 트리의 높이 : 트리에 있는 노드의 높이 중 가장 큰 값 / 최대 레벨 -> 트리의 높이 : 3 이진 트리 1. 이진 트리 모든 노드가 2개의 서브 트리를 가지고 있는 트리 자식 노드 개수를 최대 2개..

자료구조 2023.02.26

[백준] 1158 요세푸스 문제 - python

https://www.acmicpc.net/problem/1158 1158번: 요세푸스 문제 첫째 줄에 N과 K가 빈 칸을 사이에 두고 순서대로 주어진다. (1 ≤ K ≤ N ≤ 5,000) www.acmicpc.net pop하면서 동시에 append가 되는지 몰랐음 그래서 pop하고 그 다음줄에 append하고 . . 이런 바보짓의 연속이였다. 구상까지는 했는데, total의 길이를 넘어갔을 때, total의 길이가 줄었을 때 어떡하지~~ 하다가 그냥 나누고 나머지만큼만 가면 된다는 것을 알아챔 join을 잘 활용하자. 인덱스를 따로 만들면 되는데 바보같이 i += num -1 하다가 . . 이러면 안되는데? 계속 이런 반복이였다. 나는 밥오 total, num= map(int,input().split..

[22.10.19] 판다스 csv파일 활용 (loc / iloc / rank / counts )

import pandas as pd fname = './emp.csv' emp = pd.read_csv(fname, encoding='cp949') print(emp) pd.read_csv 함수로 csv 파일을 읽을 수 있음 loc / iloc # loc # 문제1 강감찬출력 print(emp.loc[2]) # # 문제2 2행~5행 print(emp.loc[2:5]) #2행~5행 loc로 원하는 행을 지정해서 불러올 수 있다. print(emp.loc[2, 'Name':'Pay']) loc[행, 열] : 원하는 행에서 특정 열만 지정하여 불러오기도 가능 # #loc print(emp.loc[0:6, 'No' : 'Name']) # #iloc print(emp.iloc[0:6, 0:2]) loc : 원하는..

PYTHON/강의복습 2022.10.19

[22.09.13] 클래스와 객체 ( class / object / __init__ )

Class 속성과 행위를 갖는 데이터 타입. 사용할 데이터(변수)와 데이터를 다루는 함수를 하나로 캡슐화한것 첫글자는 대문자로 써주기 ! Object 클래스로 생성되어 구체화된 객체(인스턴스) class가 객체화되어 메모리에 있는 상태 __init__(self) : 생성자 클래스 인스턴스가 생성될 때 호출됨 self는 항상 첫번째에 온다 ( 자기자신을 뜻함 ) 해당 클래스가 다루는 데이터를 정의함 속성으로 name, speed를 갖는 Car 클래스 만들기 name = 'None', speed = 0 을 추가하여 default값 설정하면 빈 값을 넣어도 오류안남. 차의 이름과 속도를 알려주는 info 메소드 추가하기 Counter 클래스 만들기 ~ 오늘의 강의 후기 ~ 처음에 class 설명 들을 땐.. ..

PYTHON/강의복습 2022.09.13

[22.09.06] 파이썬 데이터타입( 딕셔너리 / set )

딕셔너리 key랑 value이 같이 저장되는 자료구조 a = { 'key' : 'value' , 'key2' : 'value2' .. } 여러 쌍의 키와 밸류가 { } 안에 있음. , 로구분함 순서가 없고 키는 중복을 허용하지 않는다. 딕셔너리 요소 추가 / 변경하기 기존 key가 존재하면, 입력한 값으로 value가 바뀐다. key가 존재하지 않으면, 새로운 key : value가 추가됨. dict에서 key는 중복될 수 없음. 같은 값을 넣을 때도 키는 계속 바껴서 추가됨. setdefault( ) 새로운 key와 value를 추가할 때 사용. 이미 존재하는 key의 value 수정 불가 update 존재하는 key의 value를 바꾸고 싶을 때 사용 문법에 주의할 것 리스트도 넣기 가능하다 zip(..

PYTHON/강의복습 2022.09.06

[22.09.06 ] 파이썬 데이터타입( 리스트 / 함수 / 튜플 / 시퀀스 )

리스트 리스트는 [ ] 로 요소들을 감싸주고, ' , '로 각 요소들을 구분한다. ( 리스트 안에는 공백도 가능, 문자열도 가능함 ) 어떠한 자료형도 포함시킬 수 있다 ! a = list[ ] 이런식으로 비어있는 리스트도 생성 가능함 리스트도 인덱싱이 가능하다. a[0] = 리스트의 요소 첫번째 자리 a[-1] = 리스트의 요소 마지막 자리 리스트로 형변환 하기 list( ) split( ) 과 list( ) 차이 리스트는 슬라이싱 후에도 리스트임 list 함수 1. append : 리스트에 항목을 추가하는 함수 추가하려는 값을 그대로 list뒤에 추가해줌. extend와 다른점 : 진짜 추가하는 값 "그대로" 넣어줌. ex ) 리스트를 넣으면 리스트안에 리스트를 통을 넣음 2. extend : 리스트에..

PYTHON/강의복습 2022.09.06