Computer Language/Python
-
reduce 활용법Computer Language/Python 2020. 12. 2. 01:49
python3에서는 외부함수로 빠진 reduce입니다. 보통 lambda 함수와 붙여서 자주 사용되는데 용도를 정의하자면 element의 원소를 function연산결과로 합쳐줍니다. 말로만 하면 이해가 어려우니 예제로 이해하는게 젤 편한것 같습니다. 일단 사용하기 위해서는 선언을 해줘야합니다. from functools import reduce reduce(lambda x, y : x + y, list(range(1,5))) > 10이렇게하면 list의 모든값을 더한 결과 1개를 retuen합니다. 말 그대로 줄여주는거죠. 이 공식만 만족하면 조건문이나 다른 연산도 가능합니다. 중간의 연산이 두가지 값으로 1가지 결과만 나오면 됩니다. reduce(lambda x, y : x if x > y else y..
-
map 활용법 (숫자 list를 문자열로 변환)Computer Language/Python 2020. 12. 2. 01:14
hackerrank에서 python 능력 test중 재밌는 예제가 있어서 정리해봅니다. 입력으로 숫자 n이 주어지면 1~n까지 문자를 출력하는 문제입니다. 일단 1~n까지 숫자를 구하는거야 range로 쉽게 해결됩니다. 그런데 그걸 문자로 바꾸는건 간단한 방법과 깔끔한 방법이 두가지 존재합니다. 간단한 방법은 for문으로 range값을 받아서 변수에 하나씩 저장하고 출력하는겁니다. n = int(input()) output = "" for i in range(1,n+1): output = output + str(i) print(output) 하지만 python에는 map이라는 내장함수가 있죠. 이렇게 바꿔볼수도 있습니다. n = int(input()) output = list(range(1,n+1)) s..
-
시간 함수 datetimeComputer Language/Python 2020. 11. 29. 01:32
Python에서 시간관련해서 굉장히 많이 쓰이는 함수입니다. 보통 성능측정할때는 그냥 time()을 쓰기도 하는데 실제 user data나 날짜 비교 등 날짜관련 조작을 위해서는 datetime이 자주 사용됩니다. 개인적으로 자주쓰지만 햇갈리는것들을 정리해봅니다 1. 문자열을 datetime으로 변환 import datetime str_date = "2020-11-29 13:54:22" trans_date = datetime.datetime.strptime(str_date, '%Y-%m-%D %H:%M:%S') type(trans_date) print(trans_date) 2020-11-29 13:54:22 만약 시간:분 이런 문자열이라도 format만 맞춰주면 입력 가능합니다. import dateti..
-
함수의 가변인자 *(Asterisk)의 의미Computer Language/Python 2020. 11. 28. 16:53
python에서 *하나붙은 argument는 함수 호출 시 argument의 개수를 가변적으로 입력할 수 있습니다. def test(\*arg): for data in arg: print(data)이렇게 함수를 선언하고 아래와 같이 두가지 형태로 함수를 호출해봅시다. test(1,2,3) test( (1,2), (1,2), (2,1), (2,2) ) 결과는 아래와 같이 가변변수 값으로 그대로 출력됩니다. >>> test(1,2,3) 1 2 3 >>> test( (1,2), (1,2), (2,1), (2,2) ) (1, 2) (1, 2) (2, 1) (2, 2)**karg는 어떻게 다를까? *이 두개 붙은 키형 가변변수는 보통 key와 값으로 선언됩니다. def test2(\*\*karg): for key..