![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/bGNFDi/btrAdcdGUHS/635whEMtF1OAnJRW0uQgqK/img.png)
[※ 주의 ※] 아래를 이해하지 않고 이 글을 볼 경우, 이해가 되지 않는 부분이 있을 수 있습니다. 1. [Python] if-else 뿐만 아니라 for-else / while-else도 가능하다고? ★ 본 글은 CPython core developr인 Nick Coghlan의 글 http://python-notes.curiousefficiency.org/en/latest/python_concepts/break_else.html)을 바탕으로 작성되었습니다! ★ 파이썬에는 else문과 관련하여 재밌는 사실들도 많고, 파이썬 만의 독창적인 문법을 가지는 경우도 많다. 그러나, for-else / while-else문을 소개하는 글에서 이야기했듯이, else문은 많은 프로그래머들을 혼란에 빠뜨리기 충분하다..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/ky20y/btrAa5ga5kj/c7zRICK5BrJKyJ3Whka4Pk/img.png)
파이썬에서는 다른 언어에서는 찾아볼 수 없는 독특한 문법을 가능한 경우가 많은데, 이번 글에 소개할 반복문 제어인 for-else문 / while-else문도 그 한 가지이다. 바로 본론으로 들어가보자. 1. for - else 일반적으로 for문을 활용하면 break, continue, pass과 같은 제어문 문법을 활용한다. 여기에 else문을 추가할 수 있다는 것을 아는가? 모르는 사람들이 대다수일 것이다. 다음과 같은 코드가 작성되어 있다고 작성하자. 이 코드는 2부터 9까지 각 수가 소수인지 아닌지 판단하는 간단한 코드이다. 만약 소수일 경우 'num is a prime number'가 출력되고, 아닐 경우 그 수를 두 수의 곱으로 출력하는 코드이다. HTML 삽입 미리보기할 수 없는 소스 그러..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/bkTf8e/btrAbGGThbP/wbGiCeHUOLvDc90bU9tH31/img.png)
python에는 for문과 짝지어서 자주 나타나는 구문이 있으니, range이다. 그러나, range가 에 대한 정확한 내용을 아는 것과 모르는 것은 큰 차이를 보인다고 생각한다. 이번 포스팅을 통해 range에 대하여 알아보자. 1. range range는 파이썬의 기본 class의 한 종류이다. 흔히 for문과 같이 따라다녀 함수나 하나의 자료형으로 착각하는 python 이용자들이 많은데, python3 이후부터 range는 엄연한 CLASS이다. 다만, python2에서 range에 대응되는 xrange는 함수이다. 정확히 말하면, 시퀀스 형의 한 종류인 클래스라 할 수 있다. (다른 말로, list, tuple과 결이 비슷하다.) 흔히 "~부터 ~까지"의 정수를 하나씩 사용하는 데 자주 사용되며,..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/bUbWGz/btrAcceHiE7/uRAYXce4fby6bBx7dOYBP1/img.png)
파이썬에는 sort()라는 list 자료형 메서드가 존재한다. (sorted 함수는 다른 포스팅으로 다루겠다) 자주 사용하지만, 제대로 정리할 필요는 있을 거 같아 이 포스팅으로 정리한다. 1. sort() sort() 메서드는 list 자료형의 메서드중 하나로, list를 제자리에서 정렬을 하는 역할을 한다. 원래의 list를 수정하므로 파괴적 메서드이다. 다른 말로, sorting이 가능한 자료형이 list안에 담겨있고, 각 자료형 간 비교가 가능하다면 (쉽게 말해, '
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/F8ReA/btrAeIpEwti/WE1GOLQktk2wUyNA0Bkir1/img.png)
C++에서 반복문의 대명사 for문으로 배열이나 container에 순차적으로 접근할 수 있다. HTML 삽입 미리보기할 수 없는 소스 다만, 각 원소에 대한 작업을 쉽게 해 줄 수 있는 STL 함수가 있으니, std::for_each로 한 번에 처리하여보자. 1. for_each (※ https://www.cplusplus.com/reference/algorithm/for_each/에서 함수에 대한 정보를 확인할 수 있다.) C++의 알고리즘 관련 헤더 에는 for_each라는 함수는 다음과 같은 구조를 가진다. Function for_each(InputIterator first, InputIterator last, Function fn) for_each는 3개의 인자를 받는다. InputIterato..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/BiVld/btrAa9izHTp/f4o7UwGi1lLFHPwZJeKPk0/img.png)
다익스트라 알고리즘이나 여러 최단 거리 알고리즘에서, 초기 거리를 매우 큰 값(INF)으로 초기화해야 할 때가 왕왕 있다. 근데, 어떤 특정 값을 넣어야 할 지에 대해서는 아직 정해진 것이 없다. 사용자 취향에 따라 다음과 같이 정할 수 있다. HTML 삽입 미리보기할 수 없는 소스 그럼, 어떤 것을 사용해야 가장 부작용이 적을까? 한번 알아보도록 하자. 1. INF = INT_MAX 간혹 매우 큰 값으로 int형이 가질 수 있는 가장 큰 값인 $2^{32}-1$을 사용하는 경우가 있다. 이 수를 사용할 때 C / C++의 헤더 혹은 에 매크로로 정의되어 있는 INT_MAX를 활용하면 아주 쉽게 정의할 수 있다. (INT_MAX의 실제 값은 컴파일러 종류에 따라 다르지만, int형이 가질 수 있는 가장 ..
- Total
- Today
- Yesterday
- 문자열
- 수학
- 백준
- react
- 알고리즘
- Proactor
- 구현
- MIN
- Max
- docker
- CSAPP
- 시간복잡도
- 제어문
- Python
- for
- 사칙연산
- 프로그래밍
- bomblab
- C
- equal
- effective async
- 함수
- GDSC
- 헤더
- BOJ
- C++
- BRONZE
- JS
- Network
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |