본문 바로가기

AI/StudyNote

(48)
Python #웹 크롤링 맛배기 웹 크롤링 정의 컴퓨터 소프트웨어 기술로 웹사이트들에서 원하는 정보를 추출하는 것 파이썬에서 웹 크롤링 지원하는 대표 라이브러리 BeautifulSoup - !pip install beautifulsoup4 - !pip install bs4 == 둘다 가능 포털 사이트 메뉴 가져오기 1. urllib 모듈로 웹 페이지 가져오기 - 파이썬에서 웹과 관련된 작업을 도와주는 모듈 - 데이터를 가져오는 역할을 하는 urllib 중 request 모듈을 활용해 포털 사이트의 메인 페이지 정보를 가져옴 2. BeautifulSoup 모듈로 웹 페이지 분석 - 텍스트화된 웹 페이지는 BeautifulSoup 모듈을 활용하면 HTML 태그 단위로 분석 가능 3. 메뉴 부분의 패턴 찾기(브라우저의 페이지 소스보기) - ..
Python #모듈 #표준 모듈 #사용자 정의 모듈 #외부 모듈 파이썬의 모듈 정의 파이썬의 코드를 논리적으로 묶어서 관리하고 사용할 수 있도록 하는 것 하나의 파이썬.py 파일이 하나의 모듈 이라 보면 된다. 1. 모듈의 종류 - 표준 모듈 - 사용자 정의 모듈 - 외부 모듈(돈이 된다. 3rd Party) 2. 모듈의 호출 방법 import 모듈명으로 모듈을 가져 올 수 있음 - as(alias) 를 활용해 긴 모듈명을 줄일 수 있음 - 하나의 새로운 이름 공간(name space)을 확보하여 정의됨 - ‘from 모듈 import 함수1, 함수2….’로 모듈 내 특정 함수만 가져올 수 있음 키워드 모듈을 임포트 하고 모듈의 리스트를 출력한 예시 import keyword # 키워드 모듈을 임포트 print(keyword.kwlist) #키워드 모듈의 함수 리스트..
Python #람다 함수 #재귀 함수 람다함수 정의 리스트 내포, 조건부 표현식 등과 같이 여러 줄의 코드를 간결하게 표현할 수 있도록 도와주는 새로운 함수 정의 방법 - lambda 로 정의할 수 있고, def와 같은 역할 -> 함수의 이름을 정의하지 않고, 일회성으로 간략하게 사용할 때 유용 -> def로 정의할 만큼 복잡하지 않을 때 활용 - lambda 매개변수 1, 매개변수 2, …. : 매개변수를 이용한 표현식 람다 함수를 add라는 변수에 할당해서 일반 함수처럼 사용가능 - 람다 함수는 전통적인 함수와 다른 성격을 지님(매크로:macro) 따로 변수에 할당하지 않고 바로 한 줄로 표현 가능 def 함수와 같이 기본 매개변수, 키워드 매개변수, 가변 매개변수 설정 가능 조건문과 함께 사용 가능 람다를 사용하지 않은 일반적인 함수 ..
Python #지역변수 #전역변수 #매개변수 지역변수 - 함수 내에서 만들어진 변수 - 함수가 실행될 때, 생성될 때, 함수가 종료될 때 사라짐 지역변수 예시 def func(): a = 10 print(a) a = 20 ''' func() 함수가 호출 될 때 지역변수 a에 10이 할당되고 10이 출력됨 ''' func() ''' 함수는 종료되고 a를 출력하면 20이 출력됨 ''' print(a) 10 20 b가 지역변수라 에러가 나는 경우 def func(): b = 10 print(b) func() ''' 함수가 종료되면 b가 사라지므로 b를 출력하면 오류가 발생한다. ''' print(b) 10 전역변수 - 함수 밖에서 만들어진 변수 - 함수와 관계없이 사용 가능하며, 함수 안에서 참조 가능 - global 키워드를 사용해 함수 안에서 전역변..
Python #함수 파이썬의 함수 함수란? 입력 값으로 어떤 일을 수행한 뒤 결과 값을 출력하는 것 예) 입력: 2,4,6 출력: 4,8,12 함수: y = 2x 주로 자주 사용하는 반복된 코드를 일반화 하여 함수로 사용 - 중복된 코드를 줄일 수 있고, 코드의 가독성, 유지보수성을 향상시킬 수 있음 - 소프트웨어의 개발 시 수행 단위로 의미가 있는 코드로 함수를 사용 - 함수의 이름 또한 식별자 규칙을 지켜야 한다.(특수문자, 공백, 대소문자 구분) - 제어문과 마찬가지로 콜론과 들여쓰기를 꼭 해야 한다. - 아무 행동도 하지 않는 함수는 pass 키워드를 적어줘야 한다. - 함수의 설명(Docstring)을 적어둘 수 있음 - 내장 함수 help() 를 사용해 해당 함수의 설명을 확인할 수 있음 -> 흔히 사용하는 내장..
Python #파일 입출력 #파일 다루기 #폴더 다루기 파일 입출력 : 파일을 열어서 텍스트를 읽고, 쓰고, 수정 : 파일 처리 모드의 종류 모드 의미 설명 r 읽기 모드 파일 객체를 읽기 모드로 생성 파일의 처음 위치로 포인터를 이동 w 쓰기 모드 파일을 쓰기모드로 연다 파일에 데이터를 쓰면 기존 파일의 내용은 모두 사라짐 주어진 파일이 존재하지 않으면 새로운 파일을 만듬 x 쓰기 전용 새 파일 쓰기 모드로 연다 주어진 이름의 파일이 존재하면 에러가 발생한다 a 추가 모드 파일을 추가 모드로 연다 기존 파일의 내용의 끝에 새 내용을 추가하여 기록 + 갱신 모드 파일을 읽기와 쓰기가 모두 가능한 모드로 연다 파일 쓰기 1. 파일 명으로 파일을 생성 후 write 함수를 활용해 내용 작성 가능 - 디렉토리 경로 없이 파일명만 적은 경우 현재 파이썬이 실행되는 ..
Python #리스트 내포 리스트 내포 : 리스트를 만드는 반복문을 짧고 간결하게 만들어 줌 [ 식 for 변수 in 반복 가능한 객체] 로 정의 #리스트 내포의 사용 예 l = [] for i in range(5) : #v파이썬의 반복문 l.append(i) print(l) [0, 1, 2, 3, 4] 위 코드를 print([i for i in range(5)]) # 리스트 내포를 활용 [0, 1, 2, 3, 4] 이렇게 표현가능 리스트 내포의 활용 1. 조건문을 함께 사용할 수 있다 [ 식 for 변수 in 반복 가능한 객체 if 조건 ]로 정의 #일반 l = [] for i in range(5): if i % 2 == 0 :# 짝수라면 l.append(i) print(l) [0, 2, 4] #리스트 내포 print([i fo..
Python #while While 반복문 : 파이썬의 제어문 중 하나로 프로그램의 실행을 반복할 수 있음 while 문을 쓸 때는 무한 루프에 빠지지 않기 위해 항상 #초기값, #조건, #증감 3가지를 체크할 것 #카운트 다운 예 #카운트 다운 num = 5 #초기 while(num > 0) : #조건 print(num) num -= 1 #증감 5 4 3 2 1 #1부터 10까지 출력 num = 1 while(num 0: if num == 6 : print("---- End ----") break #반복문을 빠져나가겠다 print(num) num -= 1 # num을 하나씩 줄여서 반복하겠다 10 9 8 7 ---- End ---- # 6을 빼고 출력하고 싶다 #표현 01 num = 10 while num > 0: print(..

반응형