파이썬 2차원 배열(리스트)를 뒤집어보자. 2중 for문으로 뒤집기 새로운 리스트를 만들고 기존 리스트의 행과 열을 이중 for문으로 뒤집어 넣는다. board = [[1, 2, 3],[4, 5, 6],[7, 8, 9]] N = len(board) new_board = [[]*N for _ in range(N)] for r in range(N): for c in range(N): new_board[r].append(board[c][r]) # [[1, 4, 7], [2, 5, 8], [3, 6, 9]] zip 함수와 upacking으로 뒤집기 zip 내장함수는 두 개의 iterable한 자료형을 합쳐주는 함수이다. 기존 이차원 리스트를 * unpacking하고 각각에서 차례대로 아이템을 하나씩 꺼내 튜플을..
return으로 함수 중간에서 빠져나오기 return은 값을 반환하는 기능뿐만 아니라 함수 중간에서 바로 빠져나오는 기능도 있다. 보통은 if와 조합해서 특정 조건일 때 함수 중간에서 빠져나온다. global 변수를 사용할 경우, 특정 조건을 만족하면 함수를 빠져나오는 코드로 구현할 수 있다. 매개변수 a가 10이면 함수를 빠져나온다. 두 번째 프린트문은 실행되지 않는다. >>> def not_ten(a): ... if a == 10: ... return ... print(a, '입니다.', sep='') ... >>> not_ten(5) 5입니다. >>> not_ten(10) >>>
list 의 경우 >>> .index(obj) 메서드 사용 cards = [10, 5, 15, 11, 9] # >>> 최소값 인덱스를 구하세요. print(cards.index(min(cards))) # >>> 1 string의 경우 >>> .find(obj) 메서드 사용 card_text = "hello, world!" # >>> e 의 인덱스를 구하세요. print(card_text.find("e")) # >>> 1 참고1 .find(찾는 값, start, end) 범위 지정 가능하다. 참고2 .find 의 결과값이 없다면 1을 반환한다. txt = "hello world" a = txt.find("e") b = txt.find("l", 5, 10) c = txt.find("q") # >>> 각 결과..
파이썬의 경우 1. list 2. deque 3. Que 세 가지로 큐를 사용할 수 있다. 각각은 사용법 차이가 있고 메서드도 다르기 때문에 주의해야 한다. 디버깅 못할 경우 처리가 어려웠다. 하나만 잡아서 외우는게 좋을 것 같다. 사용방식 List deque Que 라이브러리 필요없음 from collections import deque import queue 생성하기 que = [] que = deque() que = queue.Queue() 데이터 추가하기 que.append(x) que.append(x) que.appendleft(x) que.put(x) 맨 앞 데이터 가져오기 que.pop(0) que.popleft() 맨 마지막 데이터 가져오기 que.pop() que.pop() que.get..
큐(queue)란? 선입선출, FIFO(First In First Out) 기반의 자료 구조로, 큐를 사용하면 데이터를 추가한 순서대로 제거할 수 있어 스트리밍, 너비우선 탐색 등 소프트웨어 개발에서 널리 사용된다. 파이썬에서는 큐 자료구조를 3가지 방법으로 사용할 수 있다. 1. list 범용 자료구조인 list 를 사용한다. append 함수로 객체를 추가한다. list 객체의 pop(0) 함수를 호출하여 첫 번째 데이터를 제거한다. 만약 반대 방향으로 큐 자료구조를 사용하고 싶다면 insert(0, x) 함수를 사용하며 맨 앞에 데이터를 삽입할 수 있다. >>> queue = [1, 2, 3] >>> queue.append(4) >>> queue.append(5) >>> queue [1, 2, 3,..
사용이유 함수를 파라미터 없이 호출할 수 있다. 코드를 좀 더 깔끔하게 작성하기 위해 사용한다. 사용방법 파이썬 함수의 옵셔널 파라미터 기본값을 지정할 수 있다. 파라미터 안에서 다른 변수의 값을 가져올 수 없어서, None 처리 후에 함수 안에 if end == None 일때.. 로 처리한다. def quicksort(my_list, start=0, end=None): if end == None: end = len(my_list) - 1 if end - start < 1: return p = partition(my_list, start, end) quicksort(my_list, start, p - 1) quicksort(my_list, p + 1, end) list1 = [1, 3, 5, 7, 9, ..
파이썬 리스트 자료형 추가는 .append 메서드로 가능하다. a = [(1, 2), (3, 5)] a.append(1) print(a) # [(1, 2), (3, 5), 1] a.append((5,7)) print(a) # [(1, 2), (3, 5), 1, (5, 7)] a.insert(0, [0,1]) print(a) # [[0, 1], (1, 2), (3, 5), 1, (5, 7)] 참고로 튜플 자료형은 .append 메서드를 사용할 수 없다. b = (1, 2, 3) b.append(4) print(b) # AttributeError: 'tuple' object has no attribute 'append'
✅ 파이썬 정렬을 위한 내장 메서드 list.sort()와 sorted() 내장함수 메서드는 리스트를 제자리에서 수정하는 반면, 내장함수는 새로운 정렬된 리스트를 만든다. 따라서 바로 사용할 의도이면 sorted() 함수를 쓴다. list.sort() 를 사용할 경우 변수에 새롭게 담아야 한다. 그렇지 않으면 None을 반환한다. sorted([5, 2, 3, 1, 4]) # [1, 2, 3, 4, 5] a = [5, 2, 3, 1, 4] a.sort() a # [1, 2, 3, 4, 5] ✅ 파이썬 sorted 함수와 sort 메서드 내림차순 reverse=True sorted(timestamps, reverse=True) # 바로 리스트로 사용이 가능하다. timestamps.sort(reverse=..
- Total
- Today
- Yesterday
- 개발도서추천
- 무료폰트추천
- 클린코드
- 개발자커리
- 상업용무료폰트
- 맥과윈도우로깃허브
- ssafy합격후기
- ssafy6기
- 개발자책추천
- 개발자도서추천
- ssafy결과
- ssafy후기
- 코딩도서
- 임대차3법
- 깃허브계정2개
- 개발자
- 폰트추천
- 깃허브계정
- 개발언어추천
- 브왈라
- 한글무료폰트추천
- 디즈니얼굴
- 싸피
- 폰트
- 싸피6기
- 클린코더
- intj여자
- 개발언어순위
- 개발자로드맵
- SSAFY
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |