유용한 파이썬 문법 정리목차
01. 파일 불러오기 및 저장하기
스파르타 코딩클럽
1) 파일 확장자
- CSV 파일 (.csv)
- CSV 파일은 Comma Separated Values의 약자로, 데이터를 쉼표(,)로 구분하여 저장하는 형식입니다.
- Excel 파일 (.xls, .xlsx)
- Excel 파일은 표 형태로 데이터를 저장하는 Microsoft Excel의 형식입니다.
- JSON 파일 (.json)
- JSON 파일은 JavaScript Object Notation의 약자로, 데이터를 저장하는 간단한 형식입니다.
- 텍스트 파일 (.txt, .dat, 등)
- 텍스트 파일은 일반 텍스트로 된 데이터를 저장하는 파일입니다.
02. 패키지(라이브러리) 사용하기
스파르타 코딩 클
- 1) 패키지란?
- 패키지는 관련된 여러 개의 모듈을 포함하는 디렉토리입니다.
- 패키지 안에는 일반적으로 라이브러리나 다른 패키지가 포함될 수 있습니다.
- 예를 들어, **numpy**와 **matplotlib**는 여러 모듈을 포함하는 패키지입니다.
- 2) 다양한 종류의 패키지
- pandas
- 데이터 조작과 분석을 위한 라이브러리로, 데이터를 효과적으로 조작하고 분석할 수 있도록 도와줍니다.
- 아래 코드는 현재 파일이 없는 상황이므로 실행이 되지 않는게 맞습니다.
- numpy
- 과학적 계산을 위한 핵심 라이브러리로, 다차원 배열과 행렬 연산을 지원합니다.
- matplotlib
- 데이터 시각화를 위한 라이브러리로, 다양한 그래프와 플롯을 생성할 수 있습니다.
- seaborn
- Matplotlib을 기반으로 한 통계용 데이터 시각화 라이브러리로, 보다 간편하고 아름다운 시각화를 제공합니다
- scikit-learn
- 머신 러닝 알고리즘을 사용할 수 있는 라이브러리로, 분류, 회귀, 군집화, 차원 축소 등 다양한 머신 러닝 기법을 제공합니다.
- tensorflow
- 딥러닝 및 기계 학습을 위한 오픈소스 라이브러리로, 구글에서 개발했습니다. 그래프 기반의 계산을 통해 수치 계산을 수행하며, 신경망을 구축하고 학습할 수 있습니다.
03. 포맷팅(formatting) 사용하기
스파르타 코딩 클럽
- 포맷팅이란?
- 저번 시간 출력문에 대해서 배울 때 print 함수에 대해서 배웠어요!
- 이번에는 이를 활용한 조금 더 세련된 기술을 써 보도록 해요 ㅎㅎ
사진 설명을 입력하세요.
- 콤마(,)를 활용한 방법이랑 비교해보니 어떤가요~? 여러번 콤마(,)를 찍을 필요가 없고 코드가 훨씬 깔끔하지 않나요? ㅎㅎ
- f-string 포맷팅을 사용하려면 문자열 맨 앞에 f를 집어 넣고 내가 놓고자 하는 **변수의 위치에 중괄호{}**를 사용하여 변수와 함께 기입하면 됩니다
- 포맷팅 분법 (특히, f-string)은 다양한 상황에서 아주 많이 사용하기 때문에 꼭 기억해 놓으시길 추천 드립니다 🙂
04. 리스트 캄프리헨션
스파르타 코딩 클럽
1) 리스트 캄프리헨션이란?
- 리스트 캄프리헨션은 파이썬에서 리스트를 간결하게 생성하는 방법 중 하나입니다.
- 보통 반복문과 조건문을 사용하여 리스트를 생성할 때 사용됩니다.
- 이는 코드를 더 간결하고 가독성 있게 만들어 줍니다.
- 리스트 캄프리헨션은 파이썬의 강력한 기능 중 하나로, 데이터 처리 및 변환에 유용하게 활용됩니다.
05. lambda 사용하기
스파르타 코딩 클럽
1) lambda(람다)란?
- 람다 함수(lambda function)는 익명 함수로, 이름 없이 정의되는 간단한 함수입니다.
- 주로 한 줄로 표현되며, 일반적인 함수 정의와는 달리 def 키워드를 사용하지 않고 lambda 키워드를 사용하여 정의됩니다.
- 일반 함수는 def 키워드를 사용하여 명시적으로 함수를 정의합니다.
- 람다 함수는 lambda 키워드를 사용하여 익명 함수를 간단히 정의합니다.
06. glob 사용하기
스파르타 코딩 클럽
1) glob란?
glob 함수는 파일 시스템에서 파일을 찾을 때 사용되는 유용한 도구입니다.
이 함수는 파일 이름의 패턴 매칭을 통해 파일을 검색하고, 일치하는 파일들의 리스트를 반환합니다.
사진 설명을 입력하세요.
07. os 사용하기
스파르타 코딩 클럽
1) os란?
- os 모듈은 운영 체제와 상호 작용하기 위한 다양한 함수들을 제공합니다.
- 이 모듈은 파일 시스템을 관리하고, 디렉토리를 탐색하고, 파일을 조작하는 데 사용됩니다.
- 아래에는 os 모듈의 주요 기능과 예시를 제공합니다.
- 주요 기능
- 파일 및 디렉토리 관리:
- 파일 생성, 이름 변경, 삭제 등의 작업을 수행할 수 있습니다.
- 디렉토리 생성, 탐색, 삭제 등의 작업을 수행할 수 있습니다.
- 경로 관리:
- 절대 경로, 상대 경로, 현재 작업 디렉토리 등의 경로를 관리할 수 있습니다.
- 경로 구성 요소를 조작하고, 경로를 연결하고, 경로를 정규화할 수 있습니다.
- 환경 변수 관리:
- 시스템의 환경 변수를 가져오거나 설정할 수 있습니다.
- 실행 관리:
- 외부 프로그램을 실행하거나, 현재 프로세스의 종료 등의 작업을 수행할 수 있습니다.
08. split 사용하기
스파르타 코딩클
리스트의 split 메서드를 활용하면 문자열을 여러개로 쪼개는데 유용해요.
이러한 메서드를 알고 있으면 문자열로 되어 있는 파일 경로로 부터 파일 제목을 추출하는 등의 상황에서 아주 유용하게 사용할 수 있습니다!
09. 클래스 배우기
스파르타 코딩 클
1) 클래스란?
파이썬 클래스(Class)는 객체 지향 프로그래밍(OOP)의 중요한 개념 중 하나입니다.
객체 지향 프로그래밍은 현실 세계의 사물을 모델링하여 프로그래밍하는 방법으로, 이를 통해 코드의 재사용성과 유지보수성을 향상시킬 수 있습니다.
사진 설명을 입력하세요.
클래스와 객체(Object)의 관계
- 클래스는 객체를 만들기 위한 틀 또는 설계도입니다. 객체는 이러한 클래스를 이용하여 생성됩니다.
- 예를 들어, Person 클래스를 정의하면 이 클래스를 사용하여 여러 사람 객체를 만들 수 있습니다.
사진 설명을 입력하세요.
- 다형성(Polymorphism)
- 다형성은 같은 이름의 메서드가 서로 다른 클래스에서 다른 기능을 수행하도록 하는 개념입니다.
- 4) 클래스가 데이터 분석에서 사용되는 예시
- 클래스는 데이터 분석에서 다양한 용도로 사용될 수 있습니다.
- 주로 데이터의 구조화, 모델링, 분석 작업의 모듈화, 코드의 재사용성 등을 위해 클래스를 활용합니다.
사진 설명을 입력하세요.
10. 불리언 인덱싱
스파르타 코딩클럽
불리언 인덱싱이란?
- 불리언 인덱싱(Boolean indexing)은 조건에 따라 요소를 선택하는 방법 중 하나입니다.
- 이것은 주어진 조건에 따라 배열이나 리스트에서 요소를 선택할 수 있게 해주는 강력한 도구입니다.
*** 질문 사항****
sdet_info 테이블에는 존재하는데 prep_sdet_info 테이블에는 존재하지않는 정보들을 가져오고자 함
공통된부분 + 왼쪽테이블에만 존재하는거
Inner join은 공통된 부분만 가져오는데 이거는 일단 left 이기 때문에 왼쪽에 먼저 정의한 테이블이 중심인데, 그 중심이 되는 테이블에서 공통되는 부분과 중심 테이블에만 있는 부분이 함께 출력된다.
SELECT * FROM sdet_info as s left outer join prep_sdet_info as ps on ps.KEDI_CD=s.KEDI_CD where stus='정상' and s.KEDI_CD IS NULL;
UNION ALL
UNION
- UNION 연산자는 두 개 이상의 SELECT문의 결과 세트를 결합하기 위해 사용된다.
- JOIN과 UNION의 기본적인 차이는 UNION은 두 결과를 직접 붙인다는 것이다.
- SELECT column_name(s) FROM table1 UNION SELECT column_name(s) FROM table2;
- UNION의 대상이 되는 SELECT문들이 논리적이어야 하고, 위에 결과를 쌓을 수 있도록 컬럼이 서로 일치해야 한다.
- 결과를 ORDER BY로 정렬할 수 있다.
result *= num
- 2) 클래스와 함수의 차이점
- 클래스와 함수는 모두 파이썬에서 코드를 조직화하고 재사용성을 높이는 데 사용됩니다.
- 그러나 클래스와 함수는 목적과 사용 방법에서 차이가 있습니다.
- 함수(Function)
- 함수는 일련의 작업을 수행하는 블록입니다.
- 함수는 일반적으로 입력(매개변수)을 받아들이고 그에 따른 결과를 반환합니다.
- 함수는 특정한 작업을 수행하는 독립적인 코드 블록으로, 재사용성을 높이고 코드의 가독성을 개선합니다.
- 함수는 클래스와 상관없이 독립적으로 정의될 수 있습니다.
- 클래스(Class)
- 클래스는 데이터와 해당 데이터를 처리하는 메서드(함수)를 함께 묶어놓은 것입니다.