분류 전체보기156 정규표현식 (2) 메타 문자 | ' | ' 문자는 or 과 동일한 의미롤 사용되는 메타 문자로 A | B는 A 또는 B 라는 의미를 갖는다. >>> p = re.compile('Crow|Servo') >>> m = p.match('CrowHello') >>> print(m) ^ ' | ' 문자는 문자열의 맨 처음과 일치한다는 것을 의미한다. ^Life life로 시작하는 문자열의 의미를 갖는다. >> print(re.search('^Life', 'Life is too short')) >>> print(re.search('^Life', 'My Life')) None >> print(re.search('^Life', 'Life is too short')) >>> print(re.search('^Life', 'My Life').. 2021. 8. 14. 정규 표현식 복잡한 문자열을 처리할 때 사용하는 기법으로 파이썬 뿐만 아니라 다른 모든 곳에서 자주 사용된다. 메타 문자 메타 문자란 원래 그 문자가 가진 뜻이 아닌 특별한 용도로 사용하는 문자를 말한다. 문자 클래스 [ ] 문자 클래스로 만들어진 정규식은 "[ ] 사이의 문자들과 매치" 라는 의미를 갖는다. 이 때 [] 사이에는 어떤 문자도 들어갈 수 없다. 이 때 하이폰(-)을 사용하면 두 문자 사이의 범위를 의미한다. (^)은 부정으로 반대를 의미한다. (1) a (2) bee (3) dot -1- [ a b c ] : (1)은 정규식과 일치하는 'a'가 있으므로 매치 , (2)도 'b'로 인해 매치 (3) 은 포함하는 문자가 없어 매치 X -2- [ a-zA-z ] : 알파벳 모두 해당하므로 (1) (2) (.. 2021. 8. 13. 다이나믹 프로그래밍 컴퓨터의 연산에는 크게 두 가지의 제약사항이 존재한다. 메모리 공간과 연산 속도의 한계이다. 이러한 상황에서 메모리 공간을 약간 더 할애 한다면 비약적으로 연산속도를 증가시킬 수 있는 방법이 있다. 이 대표적인 방법이 다이나믹 프로그래밍 , 동적 게획법이다. 다이나믹 프로그래밍은 2가지 방식 텀 다운과 보텀 업으로 나눌 수 있는데 텀 다운 같은경우에는 맨 위의 큰 문제에서 아래 문제로 쪼개 가며 해결해가는 하향식 해결 방법이고 보텀업의 경우에는 작은 문제들을 먼저 해결해가면서 큰 문제로 합쳐서 해결하는 상향식 해결방법이다. 다이나믹 프로그래밍을 설명하는데에는 피보나치 문제가 주로 이용된다 피보나치 수열에 대해서 설명은 생략하고 재귀적으로 풀어낸 피보나치 소스코드를 살펴보면 아래와 같다. def fibo(.. 2021. 8. 12. sys 모듈 사용하여 빠르게 입력받기 import sys input_data = sys.stdin.readline().rstrip() ===== restrip을 사용하는 이유 readline으로 입력하면 엔터가 줄 바꿈 기호로 입력되는데 공백 문자를 제거하려면 rstrip() 함수를 사용햐여 헌다. 2021. 8. 11. 이전 1 ··· 29 30 31 32 33 34 35 ··· 39 다음 반응형