728x90
SMALL

14-1 유용한 라이브러리

 

- 라이브러리

Turtle 라이브러리
Tkingter 라이브러리
데이터 분석을 위한 라이브러리
pip 명령어

 

- Turtle 라이브러리

그래픽을 활용하여 그림을 그릴 수 있는 여러 함수들을 제공

import turtle

forward() : 앞으로 이동
back() : 뒤로 이동
left() : 왼쪽으로 회전
right() : 오른쪽으로 회전
goto() : 해당 좌표로 이동하기
pendown() : 펜 내려 그리기
penup() : 펜 올려 그리지 않기

 

예제) 선 그리기

import turtle
turtle.forward(100)
turtle.left(90)
turtl.eforwad(100)

 

예제) 다각형 그리기

import turtle

a = int(input("다각형을 입력하세요"))
r1= int(360/a)
for x in range(a)::
  turtle.forward(100)
  turtle.left(r1)

 

 

- Tkinter 라이브러리

GUI프로그래밍 :
Graphical User Interface
이미지 혹은 그래픽을 이용하여 메뉴 등을 포함하는 화면을 구성
키보드나 마우스 등의 편리한 입력도구를 이용해서 사용자가 입력하기 편하도록 만들어진 인터페이스
파이썬을 설치하면 기본으로 포함되는 라이브러리

from tkinter import *
w = Tk() # 윈도우 객체 생성
w.mainloop() # 사용자가 윈도우에서 계속 반응하도록 대기시킴 , 저장 후 실행시키면 그래픽 창이 뜸

 

 

- Tkinter의 구성요소

Label : 한 줄짜리 텍스트를 만듦
Text : 여러 줄의 텍스트를 만듦
Entry : 텍스트를 입력할 수 있는 한 줄짜리 칸을 만듦
MsgBox : 사용자에게 박스에 메세지를 실어 출력
Button : 이벤트를 발생시키는 버튼 생성

 

예제1)

from tkinter import *
w = Tk() # 윈도우 객체 생성
lbl=Label(w,text="내용 입력하세요")
lbl.pack() # pack()은 위젯을 윈도우 화면에 위치시켜 화면에 보이는 역할을 함

btn = Button(w, fg="blue", text = "확인", height = 2)
btn.pack()
w.mainloop() # 윈도우 내부에서 수행되는 마우스 클릭 같은 이벤트들이 발생

 

예제2)

from tkinter import *
from tkinter import messagebox

def buttonclick(): # 콜백함수인 buttonclick 함수 정의
  if ent.get()=="":
    msg = "아무것도 입력 안함"
  else:
    msg = ent.get()+"를 입력함"
  messagebox.showinfo("확인",msg)
  ent.delete(0,end)

w=Tk() # 윈도우 객체 생성
lbl = Label(w,text="버튼 클릭") # 한 줄짜리 텍스트 박스에 "버튼클릭" 텍스트 넣음
lbl.pack()

ent = Entry(w, width=50) # 폭 50짜리 텍스트를 입력할 수 있는 칸을 만듦
ent.pack()
btn = Button(w, text="확인",command = buttonclick) # 클릭시 buttonclick 함수 동작, 콜백함수 : 프로그램 실행 도중 이벤트가 발생해서 실행하는 함수
btn.pack()

 

 

 

14-2 데이터 분석을 위한 라이브러리 (중요!!)

 

- Numpy 라이브러리

Numpy라이브러리 : 데이터 분석을 위한 가장 기초적인 기능 제공

n차원의 배열 객체 : 다양한 형태로 사용 가능, 데이터를 정교하게 제어할 수 있는 다양한 함수 제공

 

- Pandas 라이브러리

Pandas라이브러리 : 고성능의 쉽게 사용할 수 있는 데이터 구조인 Series, datafram 등 제공, 데이터 분석을 위한 다양한 도구 제공

데이터 프레임 : 엑셀과 흡사한 형태의 데이터를 다룰 수 있게 해줌, 해당 데이터를 쉽게 시각화하는 함수 제공

- matplotlib

matplotlib라이브러리 : 다양한 형태의 그래프를 그려주는 라이브러리

 

- BeautifulSoup 라이브러리

BeautifulSoup라이브러리 : 웹데이터의 수집, 웹크롤링, 웹 데이터를 추출하는 라이브러리, HTML이나 XML같은 구조에서 명확한 데이터를 추출하고 처리하기 위해 사용되는 라이브러리

 

- BeautifulSoup 라이브러리 실습

pip를 이용해 BeautifulSoup 라이브러리 설치

<명령 프롬프트에서>
pip install bs4
또는
pip install BeautifulSoup4 

pip : 파이썬에서 기본적으로 제공하는 라이브러리 이외의 라이브러리를 설치하는 프로그램

예제) 네이버의 메뉴 가져오기
http://www.naver.com 접속
F12를 누루거나 페이지 소스보기(마우스 우클릭)

 

from urllib.request import urlopen
from bs4 import BeatifulSoup

ohtml = urlopen("https://www.naver.com")
soup = BeautifulSoup(ohtml.read(),"html.parser")
menu = soup.find_all('sapn','an_txt')
print(menu[0])
for a in menu:
  print(menu.text)

 

 

- matplotlib 라이브러리 실습

pip이용하여 matplotlib 설치

pip install matplotlib

 

예제)

import matplotlib.pyplot as plt
Myscore=[80,90,30,60,70,60]
plt.plot(Myscore, linewidth=10) # plot() Myscore에 있는 숫자들로 그래프를 만듦,선 굵기 10
plt.title("my score") # 제목 표시
plt.xlabel("학생") # x 축 레이블
plt.ylabel("점수") # y 축 레이블
plt.show() # show() 그래프 창을 열어줌

 

 

- pip

pip : 파이썬에서 기본적으로 제공하는 라이브러리 이외의 라이브러리를 설치하는 프로그램

pip 명령어로 패키지와 라이브러리의 검색, 설치, 삭제, 버전 관리

설치는 IDLE에서 하는 것이 아니라 윈ㄷ우 명령 프롬프트에서 함

pip install--uprage pip : pip 버전 업그레이드
pip list : 설치된 패키지 목록과 세부 버전 정보 조회
pip search : 개발자가 원하는 패키지 검색
pip serach numpy : numpy에 대한 상세 버전과 설명 확인
pip uninstall 패키지명 : 삭제

728x90
LIST
Dylan07