전체 글 177

3. 파이썬의 링크드 리스트

1. 링크드 리스트(Linked list)- 떨어진 곳에 존재하는 데이터를 화살표로 연결하여 관리하는 구조- C언어에서느 중요한 자료구조이지만, 파이썬에는 리스트 타입이 링크드리스트 역할도 이미 지원함-데이터의 삽입과 삭제가 매우 빠름2. 링크드 리스트 용어- 노드(Node) : 데이터 저장 단위(데이터, 포인터)로 구성- 포인터(Pointer ) : 각 노드안에서 다음이나 이전의 노드와의 연결정보를 가지고 있는 공간#링크드 리스트 구현파이썬에서는 링크드 리스트를 구현할때 클래스를 주로 활용class Node: def __init__(self,data): self.data = data self.next = None# Node 객체와 Node 객체의 연결하기(포인터 활용)node1 = Nod..

2. 파이썬의 큐와 스택

1. 큐의 구조- 가장 먼저 넣은 데이터를 가장 먼저 꺼낼수 있는 구조이다.- 줄을 서는 행위와 유사- FIFO(First-in First-out)참고 사이트 : (https://visualgo.net/en/list)1-1.큐의 용어 - Enqueue : 큐에 데이터를 넣는 기능- Dequeue : 큐에 데이터를 꺼내는 기능 1-2. 큐의 사용- 푸시 메시지(순서대로 발송)- 멀티 태스킹을 위한 프로세스 스케줄링 방식을 구현(운영체제) 1-3. 파이썬 Queue 라이브러리를 활용하여 Queue 자료구조를 사용- Queue() : 가장 일반적인 큐 자료구조를 생성- LifoQueue() : 나중에 입력된 데이터가 먼저 출력되는 구조의 큐 자료구조를 생성(스택 구조와 비슷)- PriorityQueue() :..

1. 파이썬의 자료 구조

더보기1. 자료구조(Data Structure)- 대량의 데이터를 효율적으로 관리 할 수 있는 데이터의 구조를 의미- 코드상에서 효율적으로 데이터를 처리하기 위해 데이터의 특징에 따라 체계적으로 구조화해야함- 대표적인 자료구조는 배열, 스택, 링크드 리스트, 해쉬테이블, 힙 등... 2. 알고리즘(Algorithm)- 어떤 문제를 풀기 위한 절차 및 방법- 어떤 문제에 대해 특정한 "입력"을 넣으면 원하는  "출력"을 얻을 수 있도록 만드는 프로그램> 자료구조와 알고리즘이 중요한 이유는 어떤 자료구조와 알고리즘을 사용하느냐에 따라 프로그램의 성능 차이가 큼 3. 파이썬을 이용한 자료 구조와 알고리즘- 어떤 언어로든 자료구조와 알고리즘은 익힐 수 있음- 예전에는 C언어 또는 C++로 작성하는 경우가 많았음..

4-1. 파이썬 데이터베이스 활용 단어장 만들기

더보기1. create table voca (eng varchar(50) primary key,kor varchar(50) not null,lev int default 1); 더보기import MySQLdbclass Menu:    def __init__(self):        self.service = WordsService()    def run(self):        while True:            try:                menu = int(input('1.등록하기 2.출력하기 3.검색하기 4.수정하기 5.삭제하기 6.종료하기'))                if menu == 1:                    self.service.insertWord()       ..

4. 데이터 베이스(Data Base) Day 4

1. 파이썬을 활용한 데이터베이스 연결MYSQL client- 파이썬에서 MYSQL 데이터베이스와 상호작용하기 위해 라이브러리- pyMySQL, MySQLClient를 가장 많이 사용함-사용법은 비슷하나 MySQLClient가 속도상으로 유리하기 떄문에 MySQLClient를 권장하고 있음 2.데이터베이스 연결 설치!pip install mysqlclient 1-1. MySQL 접속하기더보기import MySQLdbMySQLdb.connect(host='ip주소',user='사용자명', password='비밀번호', db = '베이터베이스명') 더보기예시)import MySQLdbdb = MySQLdb.connect(host='localhost', user='root', password='1234', d..

3. 데이터 베이스(Data Base) Day 3

데이터 정규화란?- 데이터를 효율적으로 저장하고, 중복을 최소화하고, 데이터 무결성을 유지하기 위한 과정- 일반적으로 정규화는 여러 단계로 나뉘며, 각 단계는 데이터의 중복성을 불이고 논리적 구조를 개선 1. 제 1 정규형(1NF, First Normal Form)- 테이블 내 모든 열의 값만 있어야 하며, 중복된 데이터는 허용 되지 않음- 각 셀에 하나의 값만 있어야 하며, 중복된 데이터는 허용되지 않음 제 1 정규형의 예시)  2.제 2 정규형(2NF)- 2NF를 만족하면서, 기본키에 대해 부분 함수 종속이 없어야함- 테이블의 기본키 일부에만 종속되는 속성은 제거   제 2 정규형의 예시) 3. 제 3 정규형(3NF)- 2NF를 만족하면서, 기본키가 아닌 속성들이 서로 종속 관계에 있지 않아야 함- ..

2. 데이터 베이스(Data Base) Day 2

1. 데이터베이스 확인하기 2. 데이터베이스 만들기create database gom; 3. 테이블- 데이터를 행(ROW, 레코드) 과 열(COLUMN, 필드)로 스키마에 따라 저장 할 수 있는 구조.스키마(Schema) : 데이터베이스의 구조와 제약 조건에 관한 명세를 기술한 집합Create Table 테이블명(필드명1 데이터타입 제약 조건, 필드명2 데이터타입 제약조건,...) : 두꺼운_확인_표시 : 데이터 타입참조 : https://wikidocs.net/226173 1. MySQL 8 소개## 1. MySQL 8 소개 MySQL 8 소개 섹션은 MySQL 8 데이터베이스의 기본 개념과 주요 특징을 다루는 부분입니다. 이 섹션에서는 MySQL 8의 새로운 기능과…wikidocs.net 1) 숫자형..

1.데이터 베이스(DataBase) Day1

1. 데이터(Data)- 데이터는 정보를 나타내는 숫자, 문자, 기호의 집합- 컴퓨터 또는 디지털 장치에서 처리하고 저장할 수 있는 형태 2. 데이터 베이스(DataBase)- 체계적으로 구성된 데이터의 집합이며, 특정 목적을 위해 조직화되고 관리- 정보를 효율적으로 저장, 검색, 업데이트, 관리 할 수 있는 기술적인 도구와 구조를 제공- 데이터베이스 관리 시스템 DBMS(DataBase Management System) : 데이터베이스를 관리할 수 있는 기술적인 소프트에어- 데이버 베이스 랭킹 링크 : https://db-engines.com/en/ranking  3. 관계형 데이터베이스 시스템(R(Relational)DBMS)- 데이터를 테이블(표) 형식으로 관리하고, 각 테이블 간의 관계를 설정하여..

25. 파일 입출력 모듈

1.OSimport os- 파이썬의 OS 모듈은 운영체제의 상호 작용하는 많은 함수와 유틸리틸를 제공합니다. 이 모듈을 사용하면 파일, 디렉토리 또는 운영체제에 관한 작업을 수행 할 수 있습니다. 1-1.현재 경로 확인os.getcwd() 1-2.디렉토리 안에 파일(디렉토리)을 리스트로 변환os.listdir(os.getcwd()) 1-3.특정 경로 만들기 2.glob-glob 모듈은 파일과 폴더 이름을 찾을 때 사용하는 파이썬의 도구입니다. 이 모듈의 이름은 "전역적으로 찾기"라는 의미의 "global"에서 유래했습니다. glob는 특정 패턴에 일치하는 파일이나 폴더 이름을 쉽게 찾아줍니다.  2-1. 현재 디렉토리 txt 파일 찾기 2-2.하위 경로의 txt 파일 찾기 2-3. 현재 디렉토리와 하위 ..

파이썬(python) 2024.10.07