1. 변수
파이썬에서 변수는 값이 할당되는 공간을 의미합니다. 변수를 생성하고 값을 할당할 때, 변수 이름을 지정하고 값을 할당합니다.
x = 10
name = "Justin"
2. 데이터 타입
파이썬은 다양한 데이터 타입을 제공합니다. 일반적으로 사용하는 데이터 타입은 다음과 같습니다.
- 정수(int): 1, 2, 3 등의 정수 값을 나타냅니다.
- 실수(float): 1.0, 3.14 등의 소수 값을 나타냅니다.
- 문자열(str): "Hello", "Python" 등의 문자열 값을 나타냅니다.
3. 조건문
조건문은 특정 조건이 만족될 때 코드 블록을 실행하기 위해 사용됩니다. 파이썬에서는 `if`, `elif`, `else` 키워드를 사용하여 조건문을 작성할 수 있습니다.
x = 10
if x > 0:
print("x는 양수입니다.")
elif x < 0:
print("x는 음수입니다.")
else:
print("x는 0입니다.")
4. 반복문
반복문은 코드 블록을 반복해서 실행하기 위해 사용됩니다. 파이썬에서는 `for`와 `while` 문장을 사용하여 반복문을 작성할 수 있습니다.
- for문 예제:
fruits = ["apple", "banana", "cherry"]
for fruit in fruits:
print(fruit)
- while문 예제:
x = 0
while x < 5:
print(x)
x += 1
5. 함수
5-1. 함수 정의하기:
함수를 정의하려면 def 키워드를 사용해야 합니다. 아래는 간단한 함수의 예입니다:
def say_hello():
print("Hello, world!")
5-2. 함수 호출하기:
함수를 호출하려면 함수의 이름을 사용하고 괄호를 추가해야 합니다. 아래는 say_hello 함수를 호출하는 예입니다:
say_hello()
5-3. 매개변수 사용하기:
함수에 매개변수를 추가하여 함수에 필요한 입력 값을 전달할 수 있습니다. 매개변수는 함수 정의의 괄호 안에 선언됩니다. 아래는 이름을 인자로 받아 인사문을 출력하는 함수의 예입니다:
def say_hello(name):
print(f"Hello, {name}!")
say_hello("Alice")
5-4. 반환값 사용하기:
함수는 값을 반환할 수도 있습니다. 함수가 값을 반환하려면 return 키워드를 사용해야 합니다. 아래는 두 숫자를 더하는 함수의 예입니다:
def add_numbers(a, b):
return a + b
result = add_numbers(3, 4)
print(result) # 출력: 7
함수는 코드를 모듈화하고 재사용하기 쉽게 만들어 줍니다. 필요에 따라 함수를 정의하고 호출하여 작업을 단순화하고 코드의 가독성을 높여줍니다.
6. 문자열
파이썬에서 문자열은 문자의 시퀀스로 표현되며 작은 따옴표(') 또는 큰 따옴표(")로 둘러싸여 있습니다. 문자열은 변경할 수 없습니다(immutable). 아래는 파이썬에서 문자열을 사용하는 방법에 대한 설명입니다:
6-1. 문자열 생성:
문자열은 다음과 같이 작은 따옴표 혹은 큰 따옴표로 둘러싸여 있습니다.
string1 = 'Hello'
string2 = "World"
6-2. 문자열 연결:
문자열을 연결하려면 + 연산자를 사용합니다.
greeting = string1 + " " + string2
print(greeting) # 출력: Hello World
6-3. 문자열 인덱싱:
문자열은 시퀀스이므로, 각 문자에는 인덱스가 할당되어 있습니다. 첫 번째 문자에는 인덱스 0이 할당되며, 음수 인덱스는 문자열의 끝에서부터 색인을 합니다.
text = "Python"
print(text[0]) # 출력: P
print(text[-1]) # 출력: n
6-4. 문자열 슬라이싱:
문자열의 부분 문자열을 추출하려면 슬라이싱을 사용합니다. 슬라이싱은 문자열 내부의 연속된 문자들을 선택하는 것입니다.
text = "Hello, World!"
print(text[0:5]) # 출력: Hello
print(text[7:]) # 출력: World!
6-5. 문자열 포맷팅:
문자열 포맷팅은 변수나 값들을 문자열 안에 삽입하는 방법입니다. f-string을 사용하여 표현할 수 있습니다.
name = "Alice"
age = 25
message = f"My name is {name} and I am {age} years old."
print(message) # 출력: My name is Alice and I am 25 years old.
6-6. 문자열 메소드:
파이썬은 문자열을 다루기 위한 많은 메소드를 제공합니다. 이 메소드들은 문자열을 조작하고 변환하는데 사용됩니다. 몇 가지 예시는 아래와 같습니다.
text = "Hello, World"
print(text.lower()) # 출력: hello, world
print(text.upper()) # 출력: HELLO, WORLD
print(text.replace("Hello", "Hi")) # 출력: Hi, World
7. 리스트 (List)
리스트는 여러 가지 값을 순서대로 저장하는 데이터 구조입니다. 즉, 리스트는 여러 개의 항목을 하나의 변수에 저장하고 관리하는 방법을 제공하고 있으며 데이터를 효율적으로 관리하기 위한 매우 유용하게 사용됩니다.
리스트는 대괄호 [ ]로 감싸며, 각 항목은 쉼표로 구분됩니다. 예를 들어, 다음과 같이 리스트를 생성할 수 있습니다.
numbers = [1, 2, 3, 4, 5]
fruits = ['apple', 'banana', 'orange']
리스트는 인덱스를 사용하여 각 항목을 접근할 수 있습니다. 인덱스는 0부터 시작하며, 대괄호 안에 인덱스 값을 넣어서 접근할 수 있습니다. 예를 들어, 다음과 같이 리스트 항목에 접근할 수 있습니다.
print(numbers[0]) # 1 출력
print(fruits[1]) # banana 출력
리스트는 수정 가능한(mutable) 데이터 구조이므로, 인덱스를 이용하여 항목을 변경할 수도 있습니다.
fruits[0] = 'pear'
print(fruits) # ['pear', 'banana', 'orange'] 출력
리스트에는 많은 유용한 기능이 있습니다. 예를 들어, 항목 추가, 제거, 정렬 등의 작업을 할 수 있고, 슬라이싱을 사용하여 원하는 부분 리스트를 선택할 수도 있습니다.
numbers.append(6) # 항목 추가
fruits.remove('banana') # 항목 제거
fruits.sort() # 항목 정렬
selected_fruits = fruits[1:3] # 슬라이싱
print(numbers) # [1, 2, 3, 4, 5, 6] 출력
print(fruits) # ['orange', 'pear'] 출력
print(selected_fruits) # ['pear', 'orange'] 출력
8. 튜플 (Tuple)
파이썬에서 튜플은 값들의 순서대로 나열된 데이터 집합입니다. 튜플은 변경할 수 없으며 불변성을 가지고 있습니다. 튜플은 괄호로 묶인 요소들로 정의됩니다. 예를 들어, (1, 2, 3)은 세 개의 정수로 이루어진 튜플입니다.
튜플은 여러 가지 방법으로 사용할 수 있습니다. 예를 들어, 튜플의 요소에는 인덱스를 사용하여 접근할 수 있습니다. 예를 들어, tup = (1, 2, 3)이라는 튜플이 있고, tup[0]을 호출하면 첫 번째 요소 1을 반환합니다.
또한, 튜플은 다른 변수들과 함께 사용될 수도 있습니다. 예를 들어, (x, y) = (1, 2)로 튜플을 정의하고, x와 y 변수에 각각 1과 2 값을 할당할 수 있습니다.
튜플은 리스트와 비교해서 불변성을 가지고 있기 때문에 데이터의 불변성과 사용의 목적에 따라 여러 상황에서 유용하게 활용될 수 있습니다. 예를 들어, 튜플 값을 수정할 수 없고 읽기만 가능해서 읽기 전용 자료를 저장할 때 사용합니다.
9.딕셔너리 (Dictionary)
딕셔너리는 키와 값으로 이루어진 데이터 구조입니다. 선언할 때는 중괄호 `{}`를 사용하며, 키와 해당하는 값은 콜론 `:`으로 구분합니다.
딕셔너리는 키를 통해 값을 검색하거나 변경할 수 있습니다. 이때 키는 고유하며, 값은 중복이 가능합니다. 또한, 딕셔너리는 순서가 없으므로 인덱스를 사용하여 값을 가져오지 않습니다.
다음은 딕셔너리 예제입니다.
my_dict = {'이름': 'Justin', '나이': 23, '성별': '남성'}
딕셔너리 값에 접근하기 위해서는 `딕셔너리이름[키]` 형식으로 사용합니다. 예를 들어, `my_dict['이름']`은 `'Justin'`을 반환합니다. 값을 변경하려면 `딕셔너리이름[키] = 값` 형태로 사용합니다.
더불어 딕셔너리는 다양한 메서드와 내장 함수를 제공하여 데이터를 추가, 제거, 업데이트하는 작업을 할 수 있습니다. 이를 활용하여 원하는 대로 딕셔너리를 조작할 수 있습니다.
*내장함수 : keys(), values(), items() etc
10. 파일입출력
파이썬에서 파일 입출력을 하려면 다음과 같은 단계를 따르면 됩니다:
10-1. 파일 열기: `open()` 함수를 사용하여 파일을 엽니다. 이 함수는 파일 경로와 함께 열기 모드를 지정해야 합니다. 일반적으로 'r'은 읽기 모드, 'w'는 쓰기 모드, 'a'는 추가 모드입니다.
file = open("파일경로", "모드")
10-2. 파일 읽기: 읽기 모드로 열린 파일에서 내용을 읽기 위해서는 `read()` 메서드를 사용합니다. 이는 파일의 전체 내용을 하나의 문자열로 반환합니다.
content = file.read()
파일 읽기를 완료하면 파일을 닫는 것을 잊지 말아야 합니다.
file.close()
10-3. 파일 쓰기: 쓰기 모드로 열린 파일에 내용을 쓰기 위해서는 `write()` 메서드를 사용합니다. 이 메서드는 텍스트를 파일에 작성합니다. 이때, 줄바꿈을 추가하려면 `\n`을 사용합니다.
file.write("내용을 작성합니다.\n")
작업이 완료되면 파일을 닫는 것을 잊지 않도록 합니다.
file.close()
10-4. 파일 추가: 추가 모드로 열린 파일에 내용을 추가하기 위해서는 `write()` 메서드를 사용합니다. 이는 기존 파일의 끝에 새로운 내용을 추가합니다.
file.write("추가할 내용입니다.\n")
작업이 완료되면 파일을 닫는 것을 잊지 않도록 합니다.
file.close()
파일을 열 때부터 자동으로 닫히도록 하려면 `with` 문을 사용할 수도 있습니다. 이렇게 하면 파일을 사용한 후 명시적으로 닫을 필요가 없습니다.
with open("파일경로", "모드") as file:
# 파일 작업 수행
이렇게 기본적인 파일 입출력 메서드를 조합하여 파일을 읽고 저장하는 작업을 수행할 수 있습니다.
11. csv파일입출력으로 데이터분석에 사용
파이썬에서 데이터 csv파일을 읽어서 분석할 때 파일 입출력 사용하는 예는 다음과 같습니다.
11-1. CSV 파일 불러오기:
- `csv` 모듈을 임포트합니다.
- `with open('파일명.csv', 'r') as 파일변수:`와 같이 파일을 엽니다.
- `csv.reader(파일변수)`를 사용하여 파일 내용을 읽습니다.
import csv
with open('data.csv', 'r') as file:
csv_reader = csv.reader(file)
for row in csv_reader:
print(row)
11-2. 데이터 확인 및 처리:
- CSV 파일의 각 행은 리스트로 반환됩니다. 따라서, 필요한 데이터를 적절한 방식으로 처리합니다.
- 예를 들어, 각 열의 데이터를 변수로 저장하거나, 특정 조건에 맞는 행을 필터링하거나, 통계 분석 등을 수행할 수 있습니다.
import csv
with open('data.csv', 'r') as file:
csv_reader = csv.reader(file)
header = next(csv_reader) # 첫 번째 행은 헤더로 사용되는 경우 생략 가능
for row in csv_reader:
# 데이터 분석
print(row[0]) # 첫 번째 열 데이터 출력
이 외에도 Pandas, NumPy 등 파이썬의 다른 라이브러리들을 활용하여 좀 더 강력하고 편리한 데이터 분석 작업을 수행할 수 있습니다.
12. 데이터베이스 사용
파이썬에서 데이터베이스에 접속하고 사용하기 위해서는 다음과 같은 단계를 따르면 됩니다:
12-1. 필요한 패키지 설치
파이썬에서 데이터베이스에 접속하기 위해서는 해당 데이터베이스와 연동할 수 있는 패키지를 설치해야 합니다. 예를 들어, MySQL 데이터베이스를 사용한다면 "mysql-connector-python" 패키지를 설치해야 합니다. 다른 데이터베이스를 사용한다면 해당 데이터베이스에 맞는 패키지를 설치해야 합니다.
12-2. 데이터베이스 연결
데이터베이스에 접속하기 위해서는 연결을 설정해야 합니다. 연결을 설정하려면 호스트, 사용자 이름, 비밀번호, 데이터베이스 이름 등 연결에 필요한 정보를 알고 있어야 합니다. 이 정보를 사용하여 데이터베이스에 접속할 수 있습니다. 예를 들어, MySQL 데이터베이스에 접속하려면 다음과 같이 코드를 작성할 수 있습니다:
import mysql.connector
mydb = mysql.connector.connect(
host="호스트명",
user="사용자이름",
password="비밀번호",
database="데이터베이스이름"
)
print(mydb)
12-3. 쿼리 실행
데이터베이스에 접속한 후에는 쿼리를 실행하여 데이터를 추가, 조회, 수정, 삭제할 수 있습니다. 쿼리는 SQL 문을 사용하여 작성하며, 데이터베이스를 조작하는 다양한 작업을 수행할 수 있습니다.
예를 들어, "users"라는 테이블에서 모든 레코드를 조회하는 경우 다음과 같이 코드를 작성할 수 있습니다:
import mysql.connector
mydb = mysql.connector.connect(
host="호스트명",
user="사용자이름",
password="비밀번호",
database="데이터베이스이름"
)
mycursor = mydb.cursor()
mycursor.execute("SELECT * FROM users")
for x in mycursor:
print(x)
데이터베이스 종류에 따라 사용 방법의 차이가 있을 수 있으니, 사용하려는 데이터베이스에 맞는 문서를 참조하는 것이 좋습니다.
파이썬은 기본 문법 외에도 다양한 내장 함수나 클래스등을 사용할 수 있습니다. 또한, 유용한 라이브러리와 모듈을 사용하여 더 다양한 작업을 할 수 있습니다.
파이썬은 수많은 라이브러리와 패키지들을 제공하고 있어서 다양한 작업을 쉽게 처리할 수 있습니다. 여기에는 데이터 분석, 머신러닝, 웹 개발, 자연어 처리, 이미지 처리 등 다양한 분야를 다룰 수 있는 라이브러리들이 포함됩니다. 몇 가지 대표적인 파이썬 라이브러리는 다음과 같습니다.
1. NumPy (https://numpy.org)
배열 연산을 위해 사용되는 가장 기본적인 라이브러리이며 다차원 배열을 효과적으로 다루고, 선형대수, 통계, 변환 등 다양한 기능을 제공합니다.
2. Pandas (https://pandas.pydata.org)
데이터를 처리하고 분석하는데 매우 유용한 라이브러리로 효과적인 데이터 조작, 정제, 가공, 시각화 등을 지원합니다.
3. Matplotlib (https://matplotlib.org)
시각화를 위한 라이브러리로, 그래프나 차트를 생성하여 데이터를 시각적으로 표현할 수 있습니다.
4. Scikit-learn (https://scikit-learn.org)
머신러닝 작업을 쉽게 할 수 있도록 도와주는 라이브러리이고 다양한 머신러닝 알고리즘, 평가 및 모델 선택, 전처리 등을 제공합니다.
머신러닝에서 자주 사용되는 파이썬 라이브러리
1. scikit-learn (https://scikit-learn.org)
일반적으로 사용되는 머신러닝 라이브러리로, 다양한 분류, 회귀, 군집 등의 알고리즘을 제공합니다.
2. TensorFlow (https://www.tensorflow.org)
구글에서 개발한 딥러닝 프레임워크로, 신경망 및 딥러닝 모델의 구축과 학습에 사용됩니다.
3. Keras (https://www.tensorflow.org)
신경망 구축과 학습을 위한 간단하고 직관적인 인터페이스를 제공하는 딥러닝 라이브러리입니다. TensorFlow를 기반으로 작동합니다.
4. PyTorch (https://pytorch.org)
페이스북에서 개발한 오픈소스 딥러닝 프레임워크로, 동적인 신경망을 구축할 수 있습니다.
5. NumPy (https://numpy.org)
파이썬의 수치 계산을 위한 핵심 라이브러리로, 배열 연산과 선형 대수 연산 등을 지원합니다.
6. Pandas (https://pandas.pydata.org)
데이터 처리 및 분석을 위한 라이브러리로, 데이터 조작을 위한 효율적인 자료 구조와 데이터 읽기/쓰기 기능을 제공합니다.
7. Matplotlib (https://matplotlib.org)
데이터 시각화를 위한 라이브러리로, 선 그래프, 히스토그램, 산점도 등 다양한 그래프를 그릴 수 있습니다.
8. Seaborn (https://seaborn.pydata.org)
Matplotlib 기반으로 더 다양한 시각화 기능을 제공하는 라이브러리입니다.
데이터 시각화에서 사용되는 파이썬 라이브러리
1. Matplotlib (https://matplotlib.org)
가장 기본적이고 널리 사용되는 데이터 시각화 라이브러리입니다. 다양한 그래프 유형 및 스타일을 지원하며, 사용자 정의가 가능합니다.
2. Seaborn (https://seaborn.pydata.org)
Matplotlib 위에 구축된 라이브러리로, 통계적 그래프를 활용한 더 간단하고 멋진 시각화를 가능하게 해줍니다.
3. Plotly (https://plotly.com/python)
인터랙티브 데이터 시각화를 위한 강력한 도구입니다. 그래프를 직접 편집하고 자바스크립트로 제작된 인터랙션을 추가할 수 있습니다.
4. Bokeh (https://bokeh.org)
웹 기반 인터랙티브 시각화를 제공하는 라이브러리입니다. Python에서 고성능 시각화를 할 수 있도록 최적화되어 있으며 HTML로 사용자 정의 그래프를 배포할 수 있습니다.
5. Pandas (https://pandas.pydata.org)
데이터 분석 및 처리를 위한 라이브러리로, 내장된 그래프 기능으로 Matplotlib와 함께 사용됩니다.
영상처리에서 사용되는 파이썬 라이브러리
1. OpenCV (https://pypi.org/project/opencv-python)
일반적으로 가장 많이 사용되는 영상처리 및 컴퓨터 비전 라이브러리입니다. 다양한 영상처리 작업(이미지 로딩, 필터링, 모폴로지 연산, 객체 검출 등)을 위한 함수와 알고리즘을 제공하며, 고성능의 컴퓨터 비전 애플리케이션 개발을 지원합니다.
2. Pillow (https://pypi.org/project/Pillow)
이미지 처리에 사용되는 Python Imaging Library (PIL)의 포크입니다. 이미지 포멧 변환, 크기 조정, 필터링, 텍스트 및 그래픽 추가 등의 다양한 기능을 제공합니다.
3. scikit-image (https://scikit-image.org)
고차원 데이터를 처리하기 위한 패키지로, 이미지 처리 및 컴퓨터 비전 작업에 특화되어 있습니다. 이미지 변형, 임계값 처리, 객체 분할, 모양 분석 등의 작업을 위한 함수와 알고리즘을 제공합니다.
4. NumPy (https://numpy.org)
고성능 수치 계산을 위한 패키지로, 영상 처리에 자주 사용됩니다. 배열과 행렬 연산, 브로드캐스팅, 선형 대수, 빠른 Fourier 변환(FFT) 등을 지원하며, 다른 영상처리 라이브러리와 함께 사용할 때 매우 효과적입니다.
웹 어플리케이션 개발에서 사용되는 라이브러리
1. Flask (https://flask-docs-kr.readthedocs.io/ko)
가벼우면서도 유연한 마이크로 웹 프레임워크로, 웹 어플리케이션을 쉽게 개발할 수 있도록 도와줍니다.
2. Django (https://www.djangoproject.com)
강력하고 완전한 웹 프레임워크로, 웹 어플리케이션의 개발에 필요한 다양한 기능을 제공해줍니다.
3. Requests (https://pypi.org/project/requests)
HTTP 요청을 보내기 위한 라이브러리로, 웹 API와의 상호작용에 유용합니다.
4. Beautiful Soup (https://pypi.org/project/beautifulsoup4)
HTML 및 XML 문서를 구문 분석하고 탐색하기 위한 라이브러리입니다.
5. SQLAlchemy (https://www.sqlalchemy.org)
데이터베이스 작업을 간소화하기 위한 ORM(Object-relational mapping) 도구입니다.
6. Celery (https://pypi.org/project/celery)
비동기 작업을 위한 분산 태스크 큐 시스템입니다.
7. Pytest (https://docs.pytest.org/en)
테스트 코드를 작성하고 실행하기 위한 강력한 테스트 프레임워크입니다.
모바일 앱 개발에서 사용되는 라이브러리
1. Kivy (https://kivy.org)
Kivy는 패치 크로스 플랫폼 애플리케이션을 생성하기 위한 오픈 소스 Python 프레임워크입니다. 이를 통해 안드로이드와 iOS와 같은 다양한 플랫폼에서 동작하는 앱을 개발할 수 있습니다.
2. PySide (https://pypi.org/project/PySide) / PyQt (https://www.pythonguis.com/pyqt5)
PySide와 PyQt는 파이썬에서 Qt 라이브러리를 위한 바인딩입니다. 이를 사용하면 멋진 사용자 인터페이스를 만들고 크로스 플랫폼 앱을 만들 수 있습니다.
3. Requests (https://pypi.org/project/requests)
Requests는 파이썬에서 HTTP 요청을 보내기위한 라이브러리입니다. 이를 통해 앱에서 웹 서버와 통신하고 데이터를 가져올 수 있습니다.
4. Django / Flask : Django와 Flask는 웹 애플리케이션을 만들기 위한 인기있는 웹 프레임워크입니다. Django는 보다 전문적인 기능이 있는 큰 규모의 앱을 개발할 때 사용되며, Flask는 더 가볍고 유연한 앱을 개발할 때 주로 사용됩니다.
5. PyOpenSSL (https://www.pyopenssl.org)
PyOpenSSL은 네트워크 보안을 처리하기 위한 파이썬 라이브러리입니다. SSL 인증서를 생성하고 검증하거나, SSL 연결을 만드는 등 다양한 보안 작업을 처리할 수 있습니다.
프론트엔드(Frontend)개발에서 사용되는 파이썬 라이브러리
1. Flask (https://flask-docs-kr.readthedocs.io/ko)
마이크로 웹 프레임워크로서, 웹앱을 빠르게 개발할 수 있도록 도와줍니다.
2. Django (https://www.djangoproject.com)
풀 스택 웹 프레임워크로서, 웹 개발의 모든 단계를 처리하고 관리할 수 있습니다.
3. ReactPy (https://reactpy.dev)
ReactJS를 지원하는 파이썬 라이브러리로, 효과적인 사용자 인터페이스(UI)를 만들 수 있습니다.
4. BeautifulSoup (https://pypi.org/project/beautifulsoup4)
HTML 및 XML 문서를 구문 분석하고 추출하는 기능을 제공합니다. 웹 스크래핑에 유용합니다.
5. Requests (https://pypi.org/project/requests)
HTTP 요청을 보내고 응답을 처리할 수 있게 해주는 라이브러리입니다.
6. Selenium (https://www.selenium.dev)
웹 응용 프로그램을 자동화하고 테스트 할 수 있는 도구입니다.
7. PyQT (https://www.pythonguis.com/pyqt5)
크로스 플랫폼 애플리케이션을 만들 수 있는 Qt 툴킷의 파이썬 바인딩입니다.
8. PyWebview (https://pywebview.flowrl.com)
웹 기술을 사용하여 데스크톱 응용 프로그램을 개발하는 도구입니다.
9. Kivy (https://kivy.org)
멀티 플랫폼에서 작동하는 사용자 인터페이스 응용 프로그램을 빌드하는 데 사용되는 프레임워크입니다.
백엔드(Backend)개발에서 사용되는 파이썬 라이브러리
1. Flask (https://flask-docs-kr.readthedocs.io/ko)
웹 어플리케이션 개발을 위한 경량 프레임워크로, 빠른 개발과 쉬운 확장성을 제공합니다.
2. Django (https://www.djangoproject.com)
웹 어플리케이션 개발을 위한 완전한 프레임워크로, 데이터베이스 관리, URL 라우팅, 사용자 인증 등을 제공합니다.
3. SQLAlchemy (https://www.sqlalchemy.org)
데이터베이스와의 상호작용을 관리하는데 사용되는 ORM(Object-Relational Mapping) 라이브러리로, 다양한 데이터베이스에 대한 호환성을 제공합니다.
4. Celery (https://pypi.org/project/celery)
비동기 작업 처리를 위한 분산 태스크 큐입니다. 대용량 작업을 처리할 때 유용합니다.
5. Redis (https://redis.io)
인메모리 데이터 구조 스토어로, 캐싱, 메시지 브로커, 세션 저장 등 다양한 용도로 사용할 수 있습니다.
6. Alembic (https://alembic.sqlalchemy.org)
데이터베이스 마이그레이션을 관리하기 위한 프레임워크로, 데이터베이스 스키마 변경을 쉽게 관리할 수 있습니다.
이 외에도 많은 파이썬 라이브러리가 존재합니다. 원하는 작업이나 분야에 따라 적합한 라이브러리를 임포트(import)한 후 선택한 라이브러리에서 제공하는 기능을 사용합니다.