파이썬

    (36) 정규표현식   (접근시 피곤함)

    (36) 정규표현식 (접근시 피곤함)

    정규표현식(regular expression) 일정한 규칙(패턴)을 가진 문자열을 표현하는 방법 복잡한 문자열 속에서 특정한 규칙으로 된 문자열을 검색,추출,수정 할때 사용 문자열이 정해진 규칙에 맞는지 판단할 때 사용 re모듈을 가져와서 사용 (regular expression) re모듈에 속한 함수 match() / search() / findall() / finditer() 등등 문자열 판단하기 re.match('패턴', '문자열') import re re.match('Hello', 'Hello, world!') #결과 re.match('Python', 'Hello, world!') #매치된 문자열이 없어 아무것도 반환 하지 않음 문자열이 맨 앞에 오는지 맨 뒤에 오는지 판단하기 (search함수 ..

    (3)별로 사각형 간단하게 그리기

    문제 a = 가로길이,b = 세로길이 이다. 해당하는 사각형을 별로 그리시오 a, b = map(int, input().strip().split(' ')) 정답 answer = ('*'*a +'\n')*b print(answer) 해석 '*'에 a만큼 곱해서 가로로 그린다. '\n'을 통해 줄바꿈 하고 이 전체에 *b를 하여 세로 열길이를 늘려준다. 진짜 이미 배웠던 문제지만 짧고 간단하게 푸는사람 정말 많다...

    (33)코루틴(coroutine) 사용하기

    (33)코루틴(coroutine) 사용하기

    코루틴(cooperative routine)이란?? 여태 함수내에 함수를 사용하면 메인루틴과 서브루틴으로 나뉘어져 서브루틴은 해당 함수를 실행할때만 사용되고 곧바로 종료되었다. 코루틴이란 종료되지않고 서로 대기상태에 머물며 상호작용하는 코드 방식을 의미한다. 코루틴은 기본적으로 제너레이터의 형태이다. 코드를 실행할땐 send 메서드를 사용한다. send 메서드가 보낸값을 (yield)형식으로 받아 변수에 저장한다. 상호작용하는 함수 코드들의 실행 지점을 진입점(entry porint)라고 한다. while True:를 사용하여 무한반복루프로써 코드가 종료되지않게 한다. 1단계! 코루틴에 값을 보내보기 코루틴객체.send(값) : 코루틴에 값을 전달한다 변수 = (yield) : 전달 받은 값을 변수에 저..

    (32)제너레이터 & yield

    (32)제너레이터 & yield

    제너레이트는 yield 키워드로 간단하게 만들 수 있는 이터레이터 이다.(발생자 라고 부르기도한다.) 제너레이트와 이터레이트의 차이 제너레이트는 raise로 예외를 발생 시키지 않아도 함수끝에 도달하면 StopIteration이 자동발생 제너레이트는 next 메서드안에서 return 으로 직접 반환하지않아도 yield에서 값을 발생시킨다. 이터레이트는 return을 사용해서 반환후 바로 종료 되지만 제너레이트는 yield를 사용하기때문에 대기상태가된다. 제너레이트 만들기 yield 값 def number_generator(): yield 0 yield 1 yield 2 for i in number_generator(): print(i) 결과 0 1 2 for & 제너레이터 for 반복문에서 제너레이터 ..

    (31)iterator & iterable 반복가능객체

    (31)iterator & iterable 반복가능객체

    iterator : 값을 차례대로 꺼낼 수 있는 객체 iterable : 반복 가능한 객체 (요소가 여러개 들어있고,한 번에 하나씩 꺼낼수 있는 객체) lazy evaluation(지연평가) : 이터레이터만 생성하고 값이 필요한 시점에 요소를 꺼내는방식 메모리에 부담을 줄일 수 있다. 반복 가능한 객체 알아보기 dir(객체) dir([1, 2, 3]) ['__add__', '__class__', '__contains__', '__delattr__', '__delitem__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__gt__', '__hash__', '__iadd__', '__i..

    (31)예외 처리하기 (try,except)

    (31)예외 처리하기 (try,except)

    예외(exception)이란? 코드를 실행하는 중에 발생한 에러를 뜻함 def ten_div(x): return 10/x ten_div(2) 5.0 ten_div(0) Traceback (most recent call last): File "", line 1, in ten_div(0) File "", line 2, in ten_div return 10 / x ZeroDivisionError: division by zero 이렇게 발생하는 모든 에러들을 예외라고 한다. 예외가 발생하면 실행을 중단하고 에러가 발생한다. try except로 예외처리하기 예외처리란?예외 발생시 코드 실행을 중단하지 않고 예외결과를 나타내주는 처리방법 예외 처리는 에러가 발생하더라도 스크립트의 실행을 중단시키지 않고 계속 실행..