본문 바로가기

😀 기초/파이썬(Python)

1장 파이썬 설치와 설정(1.1장 ~ 1.5장)

1.1 파이썬 설치하기

 

1. 아나콘다 파이썬 설치

 

2. 모든 프로그램 → Anaconda3 (64-bit) → Anaconda Prompt 실행

  • python 입력 후, 동작 확인
  • ipython 입력 후, 동작 확인

 

3. 주피터 노트북 동작 확인

1.2 파이썬 처음 사용하기

 

1. 파이썬 처음 사용하기(파이썬은 두 가지 방법으로 사용 가능)

  • 콘솔이나 주피터 노트북을 사용한 REPL(Read - Eval - Print - Loop)
  • 스트립트(script) 실행 방식

2. REPL 방식

  • 레플 방식은 주피터를 실행해서 명령어를 한 줄씩 입력하며 실행 상황을 지켜보는 방식
  • 프로그래밍을 공부하거나 코드 초기 버전을 제작할 때 유용한 방식
  • 이 책에서 모든 코드를 레플 방식으로 실행 할 예정.

3. 스크립트 실행 방식

  • 코드를 모두 완성한 후 전체 코드를 한 번에 실행하고 싶을 때 코드를 .py 확장자 파일로 만든다.
  • 스크립트는 주피터나 아이파이썬 콘솔을 실행하지 않고, 터미널에서 직접 실행
  • 다만 스크립트에서는 변수 이름만 입력해서 변수의 값, 즉 표현이 표시되는 것이 불가능
  • 반드시 명시적으로 print 명령을 사용해야 함.
  • [Text File] 만들기 -> [test.py]로 rename 하기 -> 코드 작성 -> 터미널에서 python test.py 실행

1.3 파이썬 패키지 설치하기

 

1. 라이브러리와 패키지

  • 집을 지을 때, 시멘트를 직접 제작할 필요는 없다 -> 이미 만들어진 사서 쓰는 게 효율적
  • 프로그램 역시 처음부터 제작할 필요는 없다.
  • 이미 만들어진 프로그램의 집합을 라이브러리(library)함. (파이썬에서는 패키지(packag))

2. 패키지 설치

  • 일부 패키지는 파이썬 설치 때 함께 설치되는데 이러한 패키지를 표준 패키지라고 함 
  • 그러나 대부분은 파이썬 설치 후, 별도로 설치
  • 아나콘다 배포판을 설치하면 다양한 패캐지들을 추가로 기본 설치 해줌
  • 그러나 그 외에 추가로 패키지를 사용할 경우 사용자가 수동으로 설치
  • 기본적으로 모든 파이썬 패키지는 PyPI 서버 라는 공식 패키지 서버에 등록
  • 하지만 아나콘다 배포판의 경우 PyPI가 아닌 독자적인 패키지 서버를 운영
    • PyPI보다는 적은 패키지의 수

3. 패키지 관리자

  • 패키지를 설치하기 위한 프로그램을 패키지 관리자 라고 함.
  • 파이썬에서는 pip라고 하는 기본을 제공
  • 아나콘다 배포판에서는 conda 라고 하는 전용 패키지 관리자도 제공

4. pip, conda 를 사용하여 설치된 패키지를 확인

  • pip 패키지 관리자를 사용할 때는 pip list 명령
  • conda 패키지 관리자를 사용할 때는 conda list 명령

 

5. pip, conda 를 이용하여 패키지를 설치

  • 콘솔 창에서 다음과 같이 입력
pip install 패키지이름 conda install 패키지이름

1.4 파이썬 패키지 설치하기

 

1. NumPy

2. SciPy

3. SymPy

4. Pandas

5. Matplotib

6. Seaborn

 

7. 패키지 설치

  • 아나콘다 배포판을 설치하면 위에 것을 포함한 다양한 것들이 자동으로 설치된다.
  • 사용하지 않을 경우에는 pip나 conda로 직접 설치할 수 있음.

1.5 아이파이썬 및 주피터 설정

 

1. 아이파이썬 및 주피터 설정 디렉터리

  • 아이파이썬, 주피터 노트북 설치되면 사용자 홈 디렉터리 아래 .ipython 생성

2. 프로필 작성

  • 아이파이썬 또는 주피터 관련 설정을 하려면 프로필이 필요함.
  • 프로필은 .ipython 설정 디렉터리 아래에 저장됨.
  • 기본으로 만들어지는 프로필 디렉터리는 profile_default

3. 사용자 설정 파일

  • 사용자 설정은 다음 두 파일을 이용하여 적용할 예정
  • 스타트업 파일
  • ipython_config.py 파일

4. 스타트업(startup) 파일

  • 아이파이썬과 주피터 노트북을 시작 전에 실행되는 파일
  • 스타트업 폴더 아래 .py 확장자를 가진 모든 파이썬 스크립가 실행됨
  • 00.py 생성
# -*- coding: utf-8 -*-

import warnings
warnings.simplefilter('ignore')

import matplotlib as mpl
mpl.use('Agg')
import matplotlib.pylab as plt
from mpl_toolkits.mplot3d import Axes3D

import seaborn as sns
sns.set()
sns.set_style("whitegrid")
sns.set_color_codes()

import numpy as np
import scipy as sp
import pandas as pd
import statsmodels.api as sm
import sklearn as sk

# Do not remove this line!
plt, Axes3D, sns, np, sp, pd, sm, sk
  • 이 파일이 정상 실행되려면 임포트할 패키지가 미리 설치되어야 함.
  • conda list 명령으로 확인 필요

5. ipython_config.py 설정 파일

  • 일부 파이썬 명령은 하나의 스크립트 안에서만 실행되므로 스타트업 파일에 적어도 콘솔에 적용되지 않음.
c = get_config()

c.InteractiveShellApp.exec_lines = [
    "%matplotlib inline",
    "%autoreload 2",
    "mpl.rc('font', family='nanumgothic')",
    "mpl.rc('axes', unicode_minus=False)",
    "mpl.rc('figure', figsize=(8, 5))",
    "mpl.rc('figure', dpi=300)",
]
  • 저자가 사용하는 ipython_config.py 설정 파일의 예이다.
  • 저자는 맷플롯리브 패키지로 그림을 그릴 때 나눔고딕 폰트를 사용하므로 그에 맞도록 설정
  • 이 파일을 정상 실행되려면 나눔고딕 폰트가 미리 설치 되어야 함.
  • https://hangeul.naver.com/font 다운 받는 링크
  • 나눔 고딕 폰트가 정상적으로 설치되면 다음 코드 실행
    import matplotlib.font_manager
    
    matplotlib.font_manager._rebuild()
    sorted([f.name for f in matplotlib.font_manager.fontManager.ttflist if f.name.startswith("Nanum")])​
    ['Nanum Brush Script',
     'Nanum Pen Script',
     'NanumBarunGothic',
     'NanumBarunGothic',
     'NanumBarunGothic',
     'NanumBarunGothic',
     'NanumBarunpen',
     'NanumBarunpen',
     'NanumGothic',
     'NanumGothic',
     'NanumGothic',
     'NanumGothic',
     'NanumGothic Eco',
     'NanumGothic Eco',
     'NanumGothic Eco',
     'NanumGothicCoding',
     'NanumGothicCoding',
     'NanumMyeongjo',
     'NanumMyeongjo',
     'NanumMyeongjo',
     'NanumMyeongjo Eco',
     'NanumMyeongjo Eco',
     'NanumMyeongjo Eco',
     'NanumSquare',
     'NanumSquare',
     'NanumSquare',
     'NanumSquare',
     'NanumSquareRound',
     'NanumSquareRound',
     'NanumSquareRound',
     'NanumSquareRound']​
     
  • 위 적용한 설정은 모두 아이파이썬, 주피터 노트북과 같은 상호작용 콘솔에서만 적용
  • 파이썬 인터프리터를 직접 실행하여 파이썬 스크립트를 가동하는 방식의 실행시에는 적용이 안된다.

 


문제점


1. 실행 시, 작동하지 않음.

import matplotlib.font_manager

matplotlib.font_manager._rebuild()
sorted([f.name for f in matplotlib.font_manager.fontManager.ttflist if f.name.startswith("Nanum")])​

2. 문제점 추측(1)

  • Add Anaconda to my PATH enviroment variable 를 체크하지 않음.
  • 아나콘다 설치 전에 이미 파이썬을 설치했기에 하지 않음.
  • 환경변수 Path쪽에 문제가 있나 추측

2. 문제점 추측(2)

  • 나눔 고딕폰트 설치했지만, 모두 설치하지는 않음.
  • NanumGothic 이거는 설치 함.