본문 바로가기

AI 공부53

파이썬 (정규 표현식, 메타문자) 정규식 정규표현식은 복잡한 문자열을 처리할 때 사용하는 기법 파이썬만의 고유한 기법이 아니라 문자열을 처리하는 모든 곳에서 사용 규칙 찾기 data = "나의 전화번호는 010-0000-0000 입니다. 너의 전화번호는 010-1111-1111 입니다." 텍스트의 규칙을 보니 띄어쓰기 기준으로 나누고, 전화번호의 특징을 보면 하이픈이 사이에 2개가 있다. 전화번호의 특징이 첫 3자리, 두번째 4자리, 세번째 4자리 형식이다. data = "나의 전화번호는 010-0000-0000 입니다. 너의 전화번호는 010-1111-1111 입니다." import re pat = re.compile("\d{3}-\d{4}-\d{4}") phone_list = pat.findall(data) phone_list => .. 2022. 8. 9.
파이썬 (iterable & iterator와 Generator) iterable & iterator iterable 객체: 반복 가능한 객체(list,dict,set,tuple,str,range...) iterator 객체: 값을 차례대로 꺼낼 수 있는 객체 다 꺼내면 사라진다. 꺼낼 때 데이터를 메모리에 생성해주는 방식 꺼낼 수 있는 상태 - iter 함수 iterable 객체를 iterator 객체로 변환한다. lst = [1,2,3] iterator = iter(lst) type(iterator) => list_iterator for 문은 iterable, iterator 객체를 모두 반복해줄 수 있다. for i in lst: print(i) =>1 2 3 - next 함수 iterator 객체를 순서대로 하나씩 꺼내주는 함수이다. lst = [1,2,3] i.. 2022. 8. 9.
파이썬 (collections, defaultdict, OrdereDdict 모듈) collections 모듈 파이썬의 내장 자료 구조 기존 자료구조를 확장하여 제작된 파이썬 내장모듈 deque from collections import deque dq = deque() dq => deque([]) - append dq.append(100) dq => deque([100]) - appendleft 인자로 넣은 값을 왼쪽부터 추가 dq.appendleft(300) # insert(0,300)과 같다,. dq => deque([300, 100]) 디큐 객체 생성 시 반복가능한 객체를 인자로 넣어도 된다. dq = deque(range(10)) dq => deque([9, 0, 1, 2, 3, 4, 5, 6, 7, 8]) - rotate dq 객체 안에 요소를 회전한다. dq.rotate().. 2022. 8. 8.
파이썬 (예외 처리) 파이썬의 예외는 대표적으로 구문적오류, 실행 오류, 의미적오류가 있다. 구문적 오류(Syntax Error) 문법 오류에 의하여 기계어 변환 과정에서 발생하는 오류 우리가 코딩을 하면서 가장 많이 보는 오류이다. 실행 오류(Runtime Error) 프로그램 실행 중 발생하여 프로그램이 비정상적으로 종료되는 오류 예시 def do_func(text): return int(text) text = "3" do_func(text) text = "3.0" do_func(text) =>--------------------------------------------------------------------------- ValueError Traceback (most recent call last) in () 1 .. 2022. 8. 8.
파이썬 (모듈과 패키지, sys, os, random 모듈) 모듈(Module), 패키지(Package) - 모듈: 변수, 함수, 클래스를 모아놓은 .py확장자 파일 .py 파일: 마크다운이나 셀같은 정보는 없고 순수한 파이썬 코드만 존재 .ipynb 파일: 데이터분석가(과학자)들이 파이썬 언어와 데이터로 작업하고 실험할 수 있도록 도와주는 Interactive한 개발 환경에서 실행되는 파일 - 모듈과 패키지의 차이점 - 패키지: 모듈의 기능을 폴더별로 정리한 개념 패키지 생성: 기능별로 폴더를 정리하는 것과 비슷한 개념 구조는 다음과 같다. # 모듈 불러오기 import # 패키지에서 모듈 불러오기 from import # 모듈 안에 함수와 클래스 불러오기 from import # 별칭 주기 import as 모듈 만들기 def do_func(): print(".. 2022. 8. 8.
파이썬 (50 문제 풀고, 부족한 개념 정리) 개념 1) 슬라이싱 문자열 슬라이싱을 이용하여 거꾸로 뒤집은 순서대로 출력하기! word[::-1] word[start,end,step]으로 -1을 사용하게 되면 거꾸로 뒤집힌 채로 출력이 된다. 개념 2) insert 메소드 리스트 안에서 내가 원하는 곳에 값을 추가하고 싶을 땐 insert 메소드를 활용한다. lst.insert(위치,값)의 구조로 사용된다. 개념 3) remove함수 어떠한 리스트에서 값을 삭제하고 싶을 땐 remove 함수를 활용한다. remove("삭제할 값")의 구조로 사용된다. 개념 4) join 메소드 join 메소드는 어떠한 리스트를 묶는 것이다. "묶을 형식".join(lst)의 구조로 사용된다. 개념 5) dict data = { "영어" : 95, "수학" : 100.. 2022. 8. 6.
728x90