'Programming' 카테고리의 글 목록 (11 Page)
본문 바로가기

Programming218

좋은 프로그래머가 되는 24가지 방법 평생 개발자로 일하기 위해서 가져야 할 좋은 습관들을 알아보자. 추가로 의견이 있으면 댓글로 달아서 같이 공유를 하면 어떨까? 프로그래밍에 열정이 있어야 한다. 열정이 없고 즐기지 못하면 평생 지속하기 어려운 일이다. 지금 환경이 있는 열정도 꺾어버릴 만큼 열악하다면 심각하게 변화를 생각해야 한다. 프로그래밍 기초 원리를 이해해야 한다. 원리를 모르면 근본적인 해결능력이 떨어지고 수준 높은 개발을 하기 어렵다. 문제 해결 능력을 키워야 한다. 개발자의 가장 중요한 핵심 역량이다. 창의적인 사람이 되라. 대부분의 좋은 해결책은 창의력에서 나온다. 다른 사람의 소스코드를 이해할 수 있는 능력을 키워야 한다. 다른 사람의 소스코드에서 많은 것을 배울 수 있다. 수학을 잘 해야 한다. 수학을 못하면 값싼 쉬운 .. 2020. 9. 3.
list[::], tuple[::] - extended slices python에서 list, tuple를 자를 때, 효과적인 방법 list[start index:end index+1:step] >>> list_int = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] # slice >>> list_int[:2] [0, 1] >>> list_int[0:2] [0, 1] >>> list_int[:5] [0, 1, 2, 3, 4] >>> list_int[2:5] [2, 3, 4] >>> list_int[::1] [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] # even >>> list_int[::2] [0, 2, 4, 6, 8] # odd >>> list_int[1::2] [1, 3, 5, 7, 9] >>> list_int[::3] [0, 3, 6, 9] #.. 2020. 9. 2.
index(), find() - 원소의 인덱스 index(), find() 메소드는 원소의 인덱스 위치를 반환한다 index()는 해당 원소가 없으면 ValueError를 리턴하고, find()는 -1을 리턴한다 find()는 문자열에서만 지원한다 # tuple >>> (1,2,3,4).index(2) 1 >>> (1,2,3,4).index(5) Traceback (most recent call last): File "", line 1, in ValueError: tuple.index(x): x not in tuple >>> (1,2,3,4).find(2) Traceback (most recent call last): File "", line 1, in AttributeError: 'tuple' object has no attribute 'find'.. 2020. 9. 1.
string unpacking - 문자열 언팩킹 언팩킹이란? 요소를 여러 변수에 나누어 담는 것 locals()? 현재 scope 에 있는 local 변수를 딕셔너리 type( {key:value} ) 으로 반환 >>> nums = [1,2,3,4] # unpacking >>> a,*b = nums >>> a 1 >>> b [2,3,4] >>> f'{a} {b} {nums}' 1 [2,3,4] [1,2,3,4] # unpacking >>> '{a} {b} {nums}'.format(**locals()) 1 [2,3,4] [1,2,3,4] 2020. 8. 23.
copy - shallow, deep : 깊은복사, 얕은복사 list >>> num_list = [1,2,3,4] # deep copy >>> new_list = num_list[:] >>> new_list2 = list(num_list) set >>> str_set = {'Jane', 'Tim', 'John'} # deep copy >>> new_set = str_set.copy() dict >>> str_dict = {'hi': 'world'} # deep copy >>> new_dict = str_dict.copy() use copy module >>> import copy >>> object = 'other something object' >>> new_obj = copy.copy(object) # shallow copy >>> new_obj2 = copy.. 2020. 8. 19.
generator - 제너레이터 제너레이터는 파이썬의 시퀀스를 생성하는 객체다 전체 시퀀스를 한 번에 메모리에 생성하고 정렬할 필요없이, 잠재적으로 아주 큰 시퀀스를 순회할 수 있다 제너레이터를 순회할 때마다 마지막으로 호출된 요소를 기억하고 다음 값을 반환한다 제너레이터 함수는 yield문을 사용한다 2020. 8. 18.