일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- windows
- 영화
- mutex
- API
- channel
- http
- FOR
- C
- window
- GO 언어
- range
- Close
- JavaScript
- package
- 리뷰
- c++
- 책
- Callback
- Golang
- install
- tcp
- json
- Linux
- Python
- write
- File
- go언어
- bitcoin
- Sync
- go
- Today
- Total
목록FOR (7)
Code Habit
범위 기반 for 문은 c++11 부터 도입된 문법으로 컨테이너의 모든 요소를 순회하기 위한 보다 간결하고 읽기 쉬운 방법을 제공한다. 이 구문은 Java의 enhanced for loop과 Python의 for-in loop과 비슷하다. Range-based for Loop은 컨테이너의 시작부터 끝까지 모든 요소를 순회하며 auto를 사용하여 각 요소에 대한 접근을 단순화 한다. std::map employee_map; employee_map[0] = "Kane"; employee_map[1] = "Jane" employee_map[2] = "Karr"; for (const auto& pair : employee_map) { auto& no = pair.first;// key 접근 auto& name ..
Modern C++은 C++ 11 이 후의 버전을 가리키며 더 효율적으로 코드를 작성하고 안정성 및 최적화를 위해 등장했다. 1. auto 키워드 - auto 키워드를 이용하여 변수형을 자동으로 추론할 수 있다. auto n = 10; // int형으로 추론 auto str = "coding"; // char* 형식으로 추론 2. 범위 기반 루프 ( for 문 ) - 범위 기반 루프를 사용하여 컨테이너의 모든 요소를 간편하게 순회할 수 있다. std::map data; data[0] = "first"; data[1] = "second"; data[2] = "third"; for (auto& fit : data) { auto& idx = fit.first; auto& value = fit.second; /..
for 반복문에서 range 키워드를 이용하여 배열/슬라이스 요소를 순회할 수 있다. func main() { var t []int = [5]int{1, 2, 3, 4, 5} for i, v = range t {// i : index( 0 ~ 4 ), v : value( 1 ~ 5 ) fmt.Println(i, v) } } for range 구문을 사용하여 채널에서 데이터를 계속 기다릴 수 있다. func main() { var wg sync.WaitGroup wg.Add(1) ch := make(chan int) go func() { defer wg.Done() for n := range ch { // ch에 값이 들어올때까지 대기, 채널을 닫으면 (close(ch)) for 구문을 빠져나온다. fmt..
중첩된 for문에서 break로 for문을 빠져 나오면 가장 가까운 for영역만 나오게 된다. 중첩된 for문을 완전히 빠져나오고 싶을때 label을 활용할 수 있다. func main() { a, b := 9, 9 Out: for i := 0; i < a; i++ { for j := 0; j < b; j++ { if j == 5 { break Out } } } } 'Out' 레이블을 최상단 for문 바로 위에 정의해주고 안쪽에서 break 할때 해당 레이블을 명시하면 중첩된 for문을 모두 빠져나온다. 참고로 레이블을 사용하여 중첩된 for문을 빠져나오는 것은 마치 goto문을 활용하는 것과 같기때문에 자칫 코드에 혼란을 가미할 수 있으니 꼭 필요한 경우만 사용하고 되도록 중첩된 for문의 사용을 지양..
1. 딕셔너리 선언 및 접근 - 딕셔너리는 중괄호{}로 선언하며 '키:값' 형태를 쉼표(,)로 연결해서 만든다. - 딕셔너리 요소에 접근할 때는 대괄호[]안에 키를 입력하여 접근한다. dict_a = { "name": "지성", "age" : 31, } dict_a["name"] # 결과 '지성' 딕셔너리 내부의 값에 문자열, 숫자, 불등의 자료형 뿐 아니라 리스트와 딕셔너리를 값으로 넣을 수 있다. 2. 딕셔너리 값 추가하기 - 딕셔너리 변수에 키로 접근하여 값을 추가하면 된다. 딕셔너리_변수[키] = 값 3. 딕셔너리 값 제거하기 - del 키워드를 사용하여 특정 키를 지정하여 해당 요소를 제거한다. del 딕셔너리_변수[키] 4. 딕셔너리 내부에 키 있는지 확인하기 - in 키워드와 get() 함수..
1. 리스트 선언 과 접근 - 리스트는 다음과 같이 선언하고 사용할 수 있다. list_a = ["Hello", "World", "!", 2021] list_a[0] list_a[3] #결과 'Hello' 2021 위와 같이 리스트 안에 여러 종류의 자료형을 함께 넣을 수 있다. list_a[0]의 []안의 숫자는 인덱스라고 부르는데 리스트안의 몇번째 값에 접근하는지 나타낸다. 2. 리스트 길이 구하기 - 리스트의 길이는 len()함수로 구할 수 있다. list_a = ["hello", "world", "!", 2121] len(list_a) #결과 4 3. 리스트 요소 추가하기 - 리스트에 요소를 추가할 때 append()함수와 insert() 함수를 활용할 수 있다. 리스트명.append(요소) 리스..
1. range - 범위 자료형으로 for문의 반복 범위를 정할 때 사용할 수 있다. for i in range(5) : print(i) #결과 0 1 2 3 4 2. 리스트와 range함수 조합하기 - for문에서 리스트의 인덱스, 값 두개에 접근하기 위해 조합할 수 있다. array = ["가", "나", "다", "라"] for i in range(len(array)) : print("{}번째 요소 : {}".fromat(i, array[i])) 3. enumerate - iterable object로 for문에서 리스트등의 범위 자료형에 접근할 때 사용할 수 있다. array = ["가", "나", "다", "라"] for i, value in enumerate(array) : print("{}번..