파이썬 13

[python] Tread, Multithreading 개념 정리

파이썬에서 Tread 와 Multithreading은 중요한 개념으로, 동시에 여러 작업을 수행해야할 때 사용됩니다. 이번 글에서는 이러한 개념들을 간단히 설명하고, 파이썬에서 어떻게 사용되는지 알아보겠습니다. 🪡Thread란? Tread는 운영체제가 프로그램의 실행 단위로 관리하는 작은 단위입니다. 일반적으로 프로세스라는 큰 실행 단위 안에 여러개의 스레드가 존재할 수 있으며, 각 스레드는 프로세스 내의 자원을 공유하면서 동시에 실행될 수 있습니다. 스레드는 각각 독립적인 실행 흐름을 가지며, 이를 통해 멀티태스킹을 구현할 수 있습니다. 🧶Multithreading이란? Multithreading은 하나의 프로세스 안에서 여러 스레드를 동시에 실행하는 기술입니다. 이를 통해 다수의 작업을 병렬로 처리할..

[Python] 패키지(Package), 모듈(Module), 클래스(Class), 메서드(Method)

패키지(Package), 모듈(Module), 클래스(Class), 메서드(Method), 그리고 함수(Function)는 프로그래밍, 특히 객체지향 프로그래밍에서 기본적인 구성 요소들입니다. 이들은 코드의 구조를 정립하고, 재사용성을 높이며, 관리를 용이하게 하기 위해 사용됩니다. 아래에서 이들 각각에 대해 자세히 설명하겠습니다. 패키지(Package) 패키지는 하나 이상의 모듈을 포함하고 있는 디렉터리(폴더)입니다. Python에서는 이 디렉터리에 __init__.py 파일이 포함되어 있어야 합니다. 이 파일은 폴더가 패키지의 일부임을 파이썬에 알리는 역할을 합니다. 패키지는 코드를 논리적으로 그룹화하여 관리할 수 있도록 도와줍니다. 모듈(Module) 모듈은 함수, 클래스, 또는 다른 요소들을 포함..

27. 파이썬과 MySQL 연동

오늘은 jupyter notebook 에서 작성했다 1. mysqlclient 파이썬에서는 MySQL 서버와 통신할 수 있는 파이썬용 데이터베이스 커넥터의 종류가 여러가지 있음 PyMySQL, mysqlclient 가 가장 많이 사용되는 커넥터 사용법은 비슷하나 속도가 빠른 mysqlclient를 권장하고 있음 mysqlclient을 사용하기 위해 설치해준다 !pip install mysqlclient 그다음 import를 써서 MySQL데이터베이스를 불러온다 import MySQLdb db에 연결해준다 # host: IP주소, localhost, 127.0.0.1 # user: 유저, root # password: 비밀번호, 1234 # db: 데이터베이스, kdt db = MySQLdb.connect..

KDT 수업/Python 2023.03.22

[파이썬] 20. 예외처리

1. 예외처리 오류가 발생되었을 떄 별도의 처리를 하거나 무시하고 프로그램을 실행하는 것 오류가 발생 될 것으로 예상되는 문장을 try블록에 코딩하고, try 블록에 코딩된 내용을 실행하다가 오류가 발생하면 더이상 try블록의 내용을 실행하지 않고 해당 오류의 except블록에 코딩된 내용을 실행 파이썬은 발생할 수 있는 모든 문제를 예외 클래스로 만들어 놓음 1. 1-1. try except 사용하기 try: 오류가 발생할 것으로 예상되는 문장 ... ... except: 오류가 발생했을 경우 실행할 문장 ... In [ ]: print(10/3) print(5/0) #ZeroDivisionError: division by zero print(4/2) 3.3333333333333335 ---------..

KDT 수업/Python 2023.03.14

[파이썬] 주피터 노트북 설치하기

1. 파이선이 설치되어 있어야 함 (pip도 설치되어 있음) 2. pip install jupyter (설치가 되지 않는 경우 pip install --upgrade pip 명령 실행 후 다시 설치) 3. 주피터 노트북 실행 방법1. jupyter notebook --notebook-dir='C:\SennysPython\Python' 방법2. 원하는 디렉토리로 이동 후 jupyter notebook cd C:\SennysPython\Python jupyter notebook cmd창 열어두고 써야함 fileinput 단축키 esc 누르면 파란창(셀선택모드) 뜨는데 그때 단축키 사용 가능 b: 아래에 새로운 셀 추가 c: 셀 복사하기 v: 셀 붙여넣기 x: 셀 잘라내기 dd: 셀 삭제하기 m: 마크다운으로..

KDT 수업/Python 2023.03.14

[파이썬] 25.폴더 관리 프로그램 실습

1. 압축파일 정리하기 In [1]: import os os.getcwd() #위치 알기 Out[1]: 'C:\\SennysPython\\Python\\Jupyter' In [2]: # 정리 대상 폴더 경로를 설정 target_path = './고라니' In [4]: # 압축 파일 확인 import glob zipfile_path = [] for filename in glob.glob(os.path.join(target_path, '**/*.zip'), recursive=True): zipfile_path.append(filename) print(zipfile_path) ['./고라니\\데이터저장_물류.zip'] In [6]: # 압축파일 해제 import zipfile for filename in zi..

KDT 수업/Python 2023.03.14

[파이썬] 17.상속

1. 상속 기존의 정의해둔 클래스의 기능을 그대로 물려받음 기존 클래스에 기능 일부를 추가하거나, 변경하여 새로운 클래스를 정의함 코드를 재사용할 수 있게 됨 안정적이고 유지보수에 용이함 상속을 받고자 하는 대상인 기존 클래스를 부모, parent, super, base 클래스라고 부름 상속을 받는 새로운 클래스는 자식, child,sub클래스라고 부름 class Animal: def __init__(self,name,age): self.name = name self. age= age def eat (self,food): print(f'{self.name}는 {food}를 먹습니다') def sleep (self,hour): print(f'{self.name}는 {hour}시간 동안 잠을 잡니다. ') ..

KDT 수업/Python 2023.03.10

[파이썬] 16. 객체지향과 클래스

1. 객체지향 프로그래밍 문제를 여러개의 객체 단위로 나눠 작업하는 방식 1-1. 객체(Object)란? 물리적으로 존재하거나 추상적으로 생각할 수 있는 것 중에서 자신의 속성을 가지고 있고 다른것과 식별 가능한 것을 말함(in real life) 클래스에 정의된 내용대로 메모리에 생성된 것을 객체라고 함(in programming) 1-2. 클래스(class)란? 객체를 생성하기 위한 일종의 설계도와 같음 클래스는 프로퍼티(필드), 메소드(함수)로 구성되어있음 프로퍼티(Property): 데이터가 저장되는 곳 메소드(method): 객체의 동작에 해당하는 실행 블록 1-3. 클래스와 객체 건축 설계도가 클래스라면, 실제로 지어진 집은 객체 객체는 클래스로 생성되어 구체화된 인스턴스 실제로 클래스가 인스..

KDT 수업/Python 2023.03.10

[파이썬] 09. 제어문(반복문)

1. 반복문 1-1. 자료형 참/거짓 판단하기 파이썬에서는 모든 자료형을 참 또는 거짓으로 표현 할 수 있다 bool1 = True print(bool1) print(type(bool1)) >> True 숫자타입 # 값이 있으면 True, 값이 없으면(0이면) False num1 = 10 print(num1) print(type(num1)) print(bool(num1)) #파이썬에서는 모든 타입이 bool형으로 바뀔 수 있음 num2 = 0 print(num2) print(type(num2)) print(bool(num2)) >> 10 True 0 False 문자타입 str1 = "안녕" print(str1) print(type(str1)) print(bool(str1)) str2 = ' ' print..

KDT 수업/Python 2023.03.07

[파이썬] 07. 튜플(Tuple)

1. 튜플(Tuple) 리스트와 비슷하지만 리스트는 대괄호로 자료를 감싸고, 튜플은 소괄호( )로 감싼다. 소괄호를 생략할 수 도 있다. 데이터의 수정, 삭제가 불가능하다. tu1 = () print(tu1) # tu1[0] = 100 #TypeError: 'tuple' object does not support item assignment ==>추가 안됨! >>() tu2 = (1,3,5,7) print(tu2) >>(1, 3, 5, 7) tu3 = 1,3,5,7 print(tu3) print(type(tu3)) >> (1, 3, 5, 7) tu4 = ('apple', 'banana',('🍓','🍉')) print(tu4) tu5 = ('apple', 'banana',['🍓','🍉']) print(tu..

KDT 수업/Python 2023.03.07