Python/파이선과 친해지기

    [Python] - Python과 매우 친해지기-데코레이터(Decorator)

    먼길 오느라 수고들 많으셨습니다. 이번 포스팅은 Python과 매우 친해지기 그 마지막 시간인 Decorator이다. 물론 여기까지로 Python의 100%를 안다고 생각하면 큰 오산이다. 다음 시간부터는 모듈 알아보기 포스팅을 올릴 예정이니, 계속해서 Python에 대한 애정을 멈추지 말아주었으면 한다. Decorator 여러분이 만들고 있는 함수의 프로그램 동작시간을 측정한다고 가정을 하자. 간단하게 import datetime모듈의 현재시간을 출력하는 datetime.datetime.now() 함수를 이용해보자. ## 코드 : import datetime def add(val1, val2) : print(datetime.datetime.now()) print(val1+val2) print(datet..

    [Python] - Python과 매우 친해지기-람다(Lambda)

    lambda는 간단하게 함수를 생성할 수 있게 도와주는 예약어이다. 이렇게 생성된 함수를 람다 함수 또는 익명함수라고도 부른다. 람다로 생성을 한 함수들은 여러 가지 내장 함수들로 조금 더 정밀한 코드를 작성할 수 있는데, 자세한 것은 아래 사용 코드를 보고 이야기하자 Lambda의 정의와 사용 람다함수는 다음과 같이 생성, 사용한다. >>> my_foo = lambda x : x+3 >>> my_foo(3) 6 >>> my_foo(5) 8 일반 함수처럼 정의했다면 다음과 같은 코드였을 것이다. def my_foo(value) : return value+3 물론 여러개의 인자를 받을 수도 있다. >>> my_foo = lambda x,y,z : x*y*z >>> my_foo(1,2,3) 6 사용법이 어렵..

    [Python] - Python과 매우 친해지기-내포(Comprehension)

    이제 매우 친해지기의 강의도 얼마 남지 않았다.(아마 decorator와 lambda까지 하면 여러분이 Python과 충분히 친해진 것을 느낄 것이다.) 이번 시간에는 Python이 제공하는 깔끔하고 멋있는 기능인 내포에 대해서 알아보자 LIST Comprehension 일단 내포가 무엇인지를 알아야한다. 내포는 자료구조 안에 for와 if 등을 활용하여 코드를 직관적이고 단순하게 하고, 실행 속도의 향상도 도모하는 All stat 아이템 같은 존재이다. 다음 코드는 0부터 9까지 짝수만을 선택하여 my_list로 만드는 코드이다. >>> my_list = [x for x in range(10) if x%2==0] >>> my_list [0, 2, 4, 6, 8] 다음과 같이 for를 중첩하여 생성할 수..

    [Python] - Python과 매우 친해지기-Iterator와 Generator

    예약어 시간 for문의 정의를 본 사람은 Iterable이라는 말을 보았을 것이다.(안 썼나?) 이번 시간에는 Iterator에 대해서 알아보면서 우리가 사용하는 반복문을 조금 더 높은 수준으로 올려보자 Iterable 한 것과 Iterator Iterable 하다는 것은 문자 그대로 반복이 가능하다는 의미를 가진다. 즉 다음과 같은 객체들은 for, enumerate에서 반복할 수 있다. Iterable 한 객체 : list, dict, set, tuple, range, str 등등 Iterable 한 객체들은 내부적으로 __iter__() 매소드를 가지고 있다. 이를 이용하여 아래와 같은 Iterator 객체를 생성할 수 있다. >> my_list = [1,2,3,4,5,6,7,8,9,10] >> m..

    [Python] - Python과 매우 친해지기-주석

    주석은 프로그래밍에서 어려운 문법을 가지고 있는 것도 아니고, 프로그램의 실행시간의 지대한 영향을 끼치는 것도 아니다. 그런데 왜 필자는 주석을 Python과 친해지기 포스팅이 아닌 Advanced버전인 Python과 매우 친해지기에 올렸을까? 아래의 두 가지 이유가 있다. 1. 주석은 프로그래머들 사이의 협업의 규약이기에 매우 중요하므로, 이는 어느 정도 실력이 보증된 프로그래머가 작성해야된다. 2. 필자는 까먹었다. 자 그럼 Python세계의 주석을 알아보도록 하자 주석(Comment) 주석은 프로그램의 실행에 영향을 미치지 않으며, 프로그래머가 필요에 의해서 코드에 추가적인 정보를 입력하는 것이다. Python에서는 다음과 같은 방법으로 주석을 남길 수 있다. 한 줄 주석(#) def comment..

    [Python] - Python과 매우 친해지기-예약어 사전

    오랜만이다. 한 3일 만에 글을 쓰는 것 같은데 바쁜 현생을 살고 왔다. 이번 시간에는 Python에 존재하는 여러 가지 예약어에 대해서 알아보도록 하자. 이미 우리가 배운 것도 많이 있으며 어? 이건 새로 보는 건데? 하는 건 사용법으로 알아보자. ※ 주의 ※ 이번글은 굳이 다 읽은 필요가 없다. and 논리연산 and, 2개의 bool값을 받아 둘 다 참이면 True, 하나라도 False인 경우 False 가 된다. 더보기 >>> a = 3 >>> b = 5 >>> print(a>2 and b>4) True ## a>2와 b>4는 둘다 True라 둘을 and 한 결과도 True이다. >>> print(a4) False ## a4가 True더라도 and의 결과는 False이다. as 별칭을 지정한다. ..