Python

Python이란? 아나콘다를 이용한 Python 시작하기 (Mac 기준)

ssury94 2025. 1. 16. 20:50

 

 
 
 

 

파이썬(Python)이란?

파이썬(Python)은 간결하고 직관적인 문법과 강력한 기능을 제공하는 범용 프로그래밍 언어입니다.

초보자부터 전문가까지 폭넓게 사용되며, 다양한 응용 분야에서 활용되고 있습니다.

 

 

 

1. 파이썬의 특징

  1. 간결하고 읽기 쉬운 문법
    파이썬은 사람에게 친숙한 문법을 가지고 있어 코드 작성이 쉽고 가독성이 높습니다. 덕분에 프로그래밍 초보자도 비교적 빠르게 배우고 사용할 수 있습니다.
  2. 인터프리터 언어
    파이썬은 인터프리터 언어로, 코드를 한 줄씩 실행하며 결과를 즉시 확인할 수 있습니다. 이는 디버깅과 테스트를 용이하게 만듭니다.
  3. 플랫폼 독립성
    파이썬은 Windows, macOS, Linux 등 다양한 운영 체제에서 실행 가능합니다. “Write Once, Run Anywhere”의 철학을 잘 구현한 언어입니다.
  4. 방대한 표준 라이브러리
    파이썬은 파일 입출력, 네트워크 통신, 데이터 처리 등 다양한 기능을 제공하는 표준 라이브러리를 기본으로 포함하고 있습니다. 또한, 추가 라이브러리를 통해 다양한 기능을 확장할 수 있습니다.
  5. 커뮤니티와 생태계
    파이썬은 전 세계적으로 활발한 커뮤니티를 보유하고 있어, 문제 해결에 필요한 자료나 도움을 쉽게 얻을 수 있습니다. 또한, 데이터 분석, 웹 개발, 머신러닝 등 특정 분야에 특화된 라이브러리가 풍부합니다.

 

 

2. 파이썬의 장점

  1. 생산성 증가
    간결한 문법과 풍부한 라이브러리를 활용해 코드를 빠르게 작성하고 테스트할 수 있어 개발 생산성이 높습니다.
  2. 확장성
    다른 언어(C, C++ 등)로 작성된 모듈을 포함하거나, 파이썬을 다른 시스템과 통합하여 사용할 수 있습니다.
  3. 오픈소스
    파이썬은 오픈소스 언어로, 누구나 자유롭게 사용, 수정, 배포할 수 있습니다. 이는 학습 및 연구 목적의 사용에도 이상적입니다.
  4. 다양한 용도
    웹 개발, 데이터 분석, 인공지능, 게임 개발 등 다양한 분야에서 활용 가능하며, 하나의 언어로 여러 작업을 처리할 수 있습니다.

 

 

3. 파이썬의 주요 사용 사례

  1. 데이터 분석 및 시각화
    파이썬은 데이터 분석과 시각화에 널리 사용됩니다. pandas, numpy, matplotlib, seaborn 등의 라이브러리를 통해 데이터를 처리하고 시각화할 수 있습니다.
  2. 머신러닝 및 인공지능
    파이썬은 머신러닝과 딥러닝 프레임워크(TensorFlow, PyTorch, scikit-learn)를 통해 AI 시스템 구축에 활용됩니다.
  3. 웹 개발
    Django, Flask와 같은 웹 프레임워크를 사용해 동적인 웹 애플리케이션을 개발할 수 있습니다.
  4. 자동화스크립팅
    반복 작업을 자동화하거나, 간단한 스크립트를 작성하는 데 적합합니다. selenium과 같은 도구를 사용해 브라우저 자동화도 가능합니다.
  5. 과학 연구 및 계산
    과학 연구에서 시뮬레이션, 계산, 데이터 시각화를 위해 파이썬이 사용됩니다. 대표적인 라이브러리로는 SciPy, SymPy가 있습니다.
  6. 게임 개발
    Pygame을 이용해 간단한 2D 게임을 개발할 수 있으며, 게임 프로토타입 제작에도 활용됩니다.

 

 

📌 Python 가상환경, 왜 중요할까?

Python을 사용하다 보면 여러 프로젝트를 진행하게 되고, 각 프로젝트에서 다른 패키지 버전을 요구하는 경우가 많습니다.
예를 들어, 프로젝트 A는 Django 3.2를 사용하지만, 프로젝트 B는 Django 4.0이 필요할 수 있습니다.
이때, **가상환경(Virtual Environment)**을 사용하지 않으면 패키지 버전이 충돌하여 프로젝트가 제대로 실행되지 않을 가능성이 높습니다.

이런 문제를 방지하기 위해, 가상환경을 활용하여 프로젝트마다 독립적인 Python 실행 환경을 만들어야 합니다.

 

 

 

🛑 Python 가상환경을 사용할 때 주의해야 할 점

1. 가상환경을 만들지 않고 패키지를 설치하지 말 것

가끔 pip install 패키지명을 실행할 때, 전역 환경(Global Environment)에 패키지를 설치하는 경우가 있습니다.
이렇게 하면 모든 프로젝트가 해당 패키지를 공유하게 되어, 특정 프로젝트에서 패키지 버전이 충돌할 가능성이 높아집니다.

✅ 해결책: 프로젝트를 시작할 때 반드시 가상환경을 만들고 패키지를 설치하세요.

python -m venv myenv  # 가상환경 생성
source myenv/bin/activate  # (Mac/Linux) 가상환경 활성화
myenv\Scripts\activate  # (Windows) 가상환경 활성화

 

 

 

 

2. 가상환경을 활성화하지 않은 상태에서 패키지를 설치하지 말 것

가상환경을 만들었더라도, 활성화하지 않고 패키지를 설치하면 전역 환경에 설치될 수 있습니다.
✅ 해결책: 가상환경을 활성화한 후 pip install을 사용하세요.

source myenv/bin/activate  # Mac/Linux
myenv\Scripts\activate  # Windows
pip install numpy  # 가상환경 내에서 패키지 설치

가상환경이 활성화되었는지 확인하는 방법은 터미널의 프롬프트 앞에 (myenv) 같은 표시가 있는지 확인하는 것입니다.

 

 

 

3. 프로젝트마다 가상환경을 따로 만들어야 한다

각 프로젝트는 필요한 패키지가 다를 수 있으므로, 하나의 가상환경을 모든 프로젝트에 공유하면 안 됩니다.
✅ 해결책: 프로젝트마다 새로운 가상환경을 만들어 관리하세요.

python -m venv projectA_env
python -m venv projectB_env

 

 

 

 

4. 패키지 목록을 기록하고 공유할 것 (requirements.txt)

팀원과 협업할 때, 가상환경 내 패키지를 직접 공유하면 안 됩니다.
대신, requirements.txt 파일을 만들어 다른 사람이 같은 환경을 만들 수 있도록 해야 합니다.

✅ 패키지 목록 저장:

pip freeze > requirements.txt

✅ 패키지 목록을 기반으로 동일한 환경 만들기:

pip install -r requirements.txt

이렇게 하면, 같은 패키지 버전으로 환경을 재현할 수 있습니다.

 

 

 

5. 가상환경을 Git에 업로드하지 말 것

가상환경 폴더(venv, myenv 등)는 보통 수백 MB에 달하기 때문에 Git에 업로드하면 용량 낭비가 발생합니다.
✅ 해결책: .gitignore 파일을 만들어 가상환경 폴더를 제외하세요.

# .gitignore 파일에 추가
venv/
*.pyc
__pycache__/

이렇게 하면 불필요한 파일이 Git에 올라가지 않아 저장소가 깔끔해집니다.

 

 

 

🎯 Python 가상환경 사용 체크리스트

✅ 프로젝트 시작 전 가상환경을 먼저 만든다.
✅ 패키지 설치 전 가상환경을 활성화한다.
✅ 프로젝트마다 가상환경을 따로 만든다.
✅ requirements.txt 파일을 사용해 패키지를 관리한다.
✅ .gitignore를 설정해 가상환경 폴더를 Git에서 제외한다.

 

 

 

🚀 결론

Python 가상환경을 올바르게 사용하면 패키지 충돌을 방지하고, 프로젝트를 더 깔끔하게 관리할 수 있습니다.
특히, 여러 개의 프로젝트를 운영하거나 팀원과 협업할 때 반드시 가상환경을 활용하는 습관을 들이는 것이 중요합니다.

💡 이제부터는 항상 가상환경을 먼저 만들고 시작하세요! 😊


아나콘다 란?

아나콘다(Anaconda)는 데이터 분석, 머신러닝, 과학 컴퓨팅을 위한 Python 배포판으로, 

conda 명령어를 통해 7,500개 이상의 주요 라이브러리 설치를 간편하게 도와줍니다.

프로젝트별로 독립적인 파이썬 환경을 만들어 패키지 충돌을 방지할 수 있습니다.

Jupyter Notebook: 코드 작성, 실행, 시각화를 한 환경에서 수행할 수 있는 도구가 포함되어 있습니다.


1. 아나콘다 설치

(1) Anaconda 다운로드

  1. 아나콘다 공식 웹사이트로 이동: https://www.anaconda.com
  2. Download 페이지에서 macOS 버전을 선택.
  3. 사용 중인 Mac이 **Apple Silicon(M1/M2)**인지 Intel 기반인지 확인한 뒤 적합한 설치 파일을 다운로드.

(2) 설치

  1. 다운로드한 .pkg 파일 실행.
  2. 설치 마법사의 안내에 따라 진행:
    • 설치 경로는 기본값 사용 권장.
    • "Add Anaconda to my PATH environment variable" 옵션은 체크하지 않아도 됩니다.
  3. 설치가 완료되면 "Anaconda Navigator"와 관련 도구가 함께 설치됩니다.

(3) 설치 확인

터미널을 열고 아래 명령어를 입력하여 설치 확인:

conda -V

정상적으로 설치되었다면 Conda 버전이 출력됩니다.


2. Jupyter Notebook 실행

Jupyter Notebook은 데이터 분석과 시각화를 위해 널리 사용되는 도구입니다. 아나콘다를 설치하면 기본적으로 포함되어 있습니다.

(1) 현재 디렉토리에서 Jupyter Notebook 실행

터미널을 열고 원하는 디렉토리로 이동한 뒤 다음 명령을 입력:

jupyter notebook .

위 명령은 현재 디렉토리에서 Jupyter Notebook을 실행합니다. 실행 중지하려면 Ctrl + C를 누릅니다.

(2) 셀의 기본 동작

Jupyter Notebook의 셀은 두 종류로 나뉩니다:

  • 코드 셀: Python 코드를 작성하고 실행.
  • 마크다운 셀: 텍스트를 작성하여 설명 추가.

코드를 작성하고 Shift + Enter를 누르면 셀이 실행됩니다. 예를 들어:

import math
math.sqrt(16)

(3) 데이터 분석을 위한 실시간 실행

Jupyter Notebook에서는 프롬프트를 하나씩 실행하며 결과를 바로 확인할 수 있습니다. 이는 자바처럼 전체 서버를 완성하고 실행해야 하는 방식과 달리, 각 셀이 독립적으로 동작해 데이터 분석과 디버깅에 유리합니다.


3. Python 가상환경 만들기

(1) 가상환경의 필요성

전 기본 환경(base)이 Python 3.12ver으로 설치 되었습니다.

하지만 특정 라이브러리나 프로젝트의 호환성을 위해 Python 3.10을 사용하는 가상환경이 필요할 수 있습니다.

(2) 가상환경 생성

터미널에서 다음 명령을 입력하여 Python 3.10 기반의 가상환경을 만듭니다:

conda create -n 가상환경이름 python=3.10

예: "hi"라는 이름의 가상환경 생성:

conda create -n hi python=3.10

(3) 가상환경 확인 및 삭제

  • 생성한 가상환경 목록 확인:conda env list
  • 가상환경 삭제: conda env remove -n 가상환경이름

(4) 가상환경 활성화

가상환경을 활성화하려면 다음 명령을 입력:

conda activate 가상환경이름

 

예:

conda activate hi

활성화된 환경에서 Python 실행 및 라이브러리 설치를 진행할 수 있습니다.


4. 라이브러리 설치

가상환경을 생성할 때 주요 라이브러리를 함께 설치할 수도 있습니다.

(1) 가상환경 생성 시 라이브러리 설치

아래 명령어를 사용하여 필요한 라이브러리를 한 번에 설치:

conda create -n 가상환경이름 python=3.10 openssl numpy scipy matplotlib ipython scikit-learn pandas pillow jupyter seaborn

(2) 가상환경 활성화 후 라이브러리 설치

활성화된 환경에서 추가 라이브러리를 설치할 수 있습니다:

conda install 라이브러리이름

예:

conda install matplotlib

또는 pip로 설치:

pip install 라이브러리이름

5. Python 기본 사용법

(1) 문자열 가공 및 데이터 가공 예제

# 줄바꿈 예제
print("Hello,\\nPython")

# 문자열 연결
name = "Anaconda"
print("Hello, " + name)

# 수학 연산
import math
result = math.sqrt(25)
print(f"The square root of 25 is {result}")

(2) 예약어 사용 주의

Python 예약어(녹색으로 표시됨)는 변수 이름으로 사용하지 않도록 주의하세요. 예: import, def, for 등.


6. 메모리 상태 확인

프로그래밍 중 메모리 상태를 확인하거나 디버깅할 때 문자열, 변수 등을 출력하여 상태를 점검합니다. 예:

variable = 42
print(f"현재 변수 값: {variable}")

7. 데이터 분석 준비

Jupyter Notebook에서 셀을 사용하여 코드를 하나씩 실행하며 데이터 분석을 진행할 수 있습니다. 각 셀은 독립적으로 실행되며, 결과는 즉시 확인 가능합니다.

예제: 데이터 시각화

import matplotlib.pyplot as plt
import numpy as np

x = np.linspace(0, 10, 100)
y = np.sin(x)

plt.plot(x, y)
plt.title("Sine Wave")
plt.xlabel("x-axis")
plt.ylabel("y-axis")
plt.show()