Python to AI 30

Python - Pandas설치 및 Conda, Jupyter Notebook, 가상환경과 kernel

Pandas 설치pip install pandas   Jupyter Notebook 코드, 텍스트, 이미지 등을 한 곳에서 관리할 수 있는 대화형 컴퓨팅 환경데이터 분석, 머신러닝, 교육 등 다양한 분야에서 사용오픈 소스 웹 애플리케이션실시간으로 코드를 작성하고 실행하며, 그 결과를 시각적으로 확인하고 문서화 가능Python뿐만 아니라 R, Julia 등 다양한 언어 지원   Jupyter Notebook 설치 pip사용 설치conda사용 설치Jupyter Notebook 공식 GitHub 리포지토리 -소스에서 설치(... 귀찮...)Docker사용 설치 -Python환경이나 패키지 의존성 문제 걱정 xAnaconda Navigator등등 ....Anaconda Navigator 제일 간편. (다른 도구..

Python to AI 2024.11.26

Python - Pandas

Pandas; Python에서 데이터를 쉽게 다룰 수 있게 해주는 데이터 분석 라이브러리   데이터를 표(테이블) 형식으로 생성, 가공, 다양한 데이터 조작(필터링, 그룹화, 병합 등) 기능 제공데이터를 정리하고 분석하는 데 강력한 도구데이터 불러오기 및 저장 - CSV, EXCEL, SQL 등 다양한 형식의 데이터를 불러오고 저장    데이터프레임(DataFrame)판다스의 핵심 자료 구조, 엑셀의 스프레드시트처럼 행(row)과 열(column)로 구성된 2차원 데이터 구조 시리즈(Series)단일 열을 나타내는 1차원 데이터 구조, 데이터프레임의 구성 요소 중 하나. => 판다스를 이용하면 데이터의 필터링, 정렬, 집계 등 다양한 작업을 간단한 코드로 수행가능      Pandas 활용 분야 데이터 ..

Python to AI 2024.11.25

MVT(Model-View-Template) design pattern에 기반을 둔 Django의 architecture

MVT(Model-View-Template) Django의 핵심 구조Django에서 사용하는 아키텍처 패턴, 웹 애플리케이션의 기본 구조를 정의  *구성 요소 모델(Model)데이터베이스 구조와 데이터 처리 로직을 정의데이터베이스 테이블을 표현, 각 테이블의 컬럼은 모델의 필드를 나타냄 데이터를 저장, 조회, 수정, 삭제하는 작업 수행 Djangosms ORM(Object-Relational Mapping)을 제공, SQL을 직접 작성하지 않고도 Python코드로 데이터베이스 작업을 수행할 수 있게 함 뷰(View)비즈니스 로직과 데이터 처리를 담당사용자 요청에 따라 어떤 데이터를 보여줄지 결정Django의 뷰는 URL과 연결되어 사용자의 요청을 처리, 필요한 데이터를 모델에서 가져와 템플릿에 전달 뷰는..

Python to AI 2024.11.15

Django

라이브러리(Library) 특정 기능을 수행하는 모듈이나 함수들의 집합개발자가 필요에 따라 호출하여 사용할 수 있음 => 라이브러리를 사용하는 개발자는 주도권을 가지고, 필요한 기능을 선택적으로 호출하여 코드에 통합 #라이브러리 사용 예지import mathresult = math.sqrt(16) #math라이브러리의 sqrt함수 호출, 제곱근 계산print(result)#4.0  프레임워크(Framework)  애플리케이션 개발의 기본 구조와 흐름을 제공하는 틀일정한 방식에 따라 코드를 작성하도록 함 => 개발자가 정의한 코드와 미리 제공된 코드를 결합해 동작, 일반적으로 프레임워크가 전체 흐름을 제어 *특징 제어의 역전(Inversion of Control)프레임워크가 애플리케이션 흐름을 주도, 개발..

Python to AI 2024.11.15

Decorator, Context Manager

데코레이터(Decorator) 함수나 메서드를 변경하지 않고, 추가적인 기능을 쉽게 추가할 수 있는 방법함수나 다른 함수를 감싸서 원래 함수에 새로운 기능을 덧붙인다. 데코레이터를 적용하려는 함수 위에 '@데코레이터이름'을 붙여 사용  *장점 코드 재사용성 - 동일한 기능을 여러 함수에 적용할 수 있음코드 가독성 향상 - 코드 구조가 깔끔해지고, 함수의 로직에만 집중할 수 있음중복 코드 제거 - 반복되는 코드 패턴을 제거하고, 간결하게 유지할 수 있음 def decorator_function(original_function): def wrapper_function(*args, **kwargs): #추가할 기능 print("추가할 기능 실행 전") result = or..

Python to AI 2024.11.14

Iterator, Generator

Iterable(반복 가능한 객체)하나씩 차례대로 값을 꺼내올 수 있는 객체=> list, tuple, str, dictfor 루프에서 반복할 수 있으며, 내부적으로는 __iter__()메서드를 통해 이터레이터 반환 numbers = [1,2,3,4,5]for num in numbers: print(num)numbers = [1,2,3]iterator = iter(numbers) #리스트로부터 이터레이터 생성print(next(iterator))print(next(iterator))print(next(iterator))#1#2#3 __next__() 매직메서드를 호출할 때마다 다음 요소 반환 더 이상 꺼낼 요소가 없으면 StopIteration 예외 발생 __iter__() : 이터레이터 객체 자신을 반..

Python to AI 2024.11.14

File Objects - file mode, file method

file_object = open("파일이름", "모드") #oepn()함수도 객체를 반환#파일이름 : 열고자 하는 파일의 경로와 이름 지정#모드 : 파일을 여는 방식(읽기, 쓰지 등)지정#파일 모드#"r" : 읽기 모드(기본값 = 기본 매개변수)#파일이 존재하지 않으면 오류가 발생#"w" : 쓰기 모드#파일이 존재하지 않으면 새로 만들고, 파일이 존재하면 내용을 덮어씀#"a" : 추가 모드#기존 파일의 내용을 유지하고, 파일 끝에 데이터 추가#"b" : 바이너리 모드#이진 파일을 읽거나 쓸 때 사용, 다른 모드와 함께 사용 (예 : "rb", "wb")file = oeon("example.txt", "w") #쓰기 모드로 파일 열기#파일 처리 작업 수행file.close() #파일 닫기with open..

Python to AI 2024.11.13

매직 메서드(Magic Methods), 클래스 메서드(Class Methods), 정적 메서드(Static Methods), 상속(Inheritance)

매직 메서드(Magic Methods) 특별한 역할을 수행하는 미리 정의된 메서드__init__ 처럼 두개의 underbar로 시작하고 끝남 클래스의 특정 동작을 제어, 변경할 수 있다.-> 일반적으로 클래스 인스턴스의 기본 동작 수정, Python의 기본 동작을 재정의할 때 사용 #__init__#객체가 생성될 때 호출되는 생성자 메서드, 객체의 초기화 담당def __init__(self, name, age): self.name = name self.age = age#__repr__#객체의 '공식적인' 문자열 표현 반환 메서드, 주로 디버깅 위해 사용 (개발자용)def __repr__(self): return f"Person('{self.name}',{self.age})"#__add__..

Python to AI 2024.11.12

객체지향 프로그래밍(Object-Oriented Programming, OOP), - Object, Class, Instance, Attributes, Methods

Class(≒Template or 설계도)       |       ⊢ 속성(Attributes) - 객체의 데이터 ᄀ       |                                                        ⊢         인스턴스 (Instance) : 객체(Object)       ∟ 메서드(Methods) - 객체의 동작    ˩  클래스와 객체클래스: 객체를 생성하기 위한 청사진. 속성과 메서드를 정의해 객체의 구조와 동작을 설계.객체: 클래스에서 생성된 인스턴스. 클래스를 기반으로 실체화된 데이터와 기능의 묶음.클래스를 사용하는 이유: 객체를 통해 데이터를 구조화하고, 데이터와 동작(메서드)을 함께 묶어 관리하기 위해.  객체(Object)클래스(Class)의 인스턴스..

Python to AI 2024.11.11

Python 애증의 비트연산자

a = 5 #이진수로 101print(~a) #bit NOT 연산 -6print(a>1) #이진수로 010 오른쪽 shift 다른건 모르겠고 보수랑 shift는 볼.때.마.다. 이해가 안됨 볼 때마다 끝에는 결국 아~알겠다~~~~~ 하고 넘어가는데 다시보면 이해가 안됨.. python으로 코드짤 때 잘 안쓰기도 하고.. ... 그냥.. 평소에 잘 안쓰기도 하고요..? (저만,,안씁니까,,,,?)하지만 이번에는 진짜 제대로 확실하게 정리하고 넘어가서 ! 다시는 ! 뒤돌아보지 않도록!  먼저 비교적 쉬운 왼쪽 시프트 a의 이진수를 왼쪽으로 1비트씩 이동. 오른쪽에 0을 추가합니다.101 오른쪽 시프트 a의 이진수를 오른쪽으로 1비트씩 이동. 왼쪽에 0을 추가합니다.101 >> 1 = 010 (10진수 2)여..

Python to AI 2024.10.30
728x90