본문 바로가기
반응형

언어18

[Python]임의 순환체의 요소 나누기 / 언패킹(Unpacking) 심화 / 별 표현식 '*' 문제 : 순환체를 언패킹(unpacking)하려는데, 요소가 너무 많아 예외가 발생하고 일일이 작성할 필요가 없을 때 해결 : 별 표현식 (*) 을 사용한다. 예시 1 (처음과 끝을 제외한 모든 값) def drop_first_last(grades): first, *middle, last = grades return sum(middle) 첫번째와 마지막번째 성적을 무시하고 나머지의 총 합을 구하는 함수이다. 요소가 단순히 네 개였으면 네 개를 모두 언패킹해도 되겠지만, grades의 값이 97개라면(...) 이 '*'를 사용하여 편리하게 구현이 가능하다. 예시 2 (n번째 이후의 모든 값) record = ('hanlim', 'hanlim@naver.com', '010-1234-5678', '010-00.. 2022. 11. 21.
[Python] 시퀀스를 개별 변수로 나누기 / 언패킹(unpacking) 문제 : N개의 요소를 가진 튜플이나 시퀀스가 있다. 이를 변수 N개로 나누어야 한다. 해결 : 모든 시퀀스는 개별 변수로 나눌 수 있다. 한 가지 주의 할 점은 변수의 개수와 시퀀스가 일치해야 한다는 것이다. 예시 1 p = (4, 5) x, y = p print(x) print(y) p의 요소인 4와 5를 개별 변수인 x와 y로 나누어 저장하는 코드이다. 예시 2 (에러) p = (4, 5) x, y, z = p print(x) print(y) 만약, 요소의 개수가 일치하지 않으면 다음과 같은 에러가 발생한다. Traceback (most recent call last): File "/Users/hanlim_air/python/PythonCookbook/01_01.py", line 2, in x, y.. 2022. 11. 16.
[Python] pass의 역할 | 널 연산 Null Operation | IndentationError 아래 사진은 text -> json형태 변환 프로그램 중 일부입니다. def 끝자락마다 보이는 이 pass는 무슨 역할을 하는 것일까요? 직감적으로, 리턴 할 것 없이 그냥 통과하라는 느낌이 딱 들었습니다. 실제로 그 당시 구글링 했을 때에도 ^딱 이 정도로 이해하고 넘겼던 것 같은데요. (빨리 코드를 수정해서 넘겨야 했기에...) 파이썬 책을 읽다가 제대로 된 해답을 알게 되어 기록할 겸 포스팅합니다. 코딩을 할 때 전체 골격을 먼저 잡아 놓고 코딩하는 경우가 있습니다. class MyClass(object): def method_a(self): def method_b(self): print("Method B") c = MyClass() 이렇게 말이죠 ! 그러나 이 클래스는 실행되지 않습니다. 아래처럼.. 2022. 9. 26.
[C언어/초보를위한] 문자열을 붙이는 strcat, strncat 함수 구현하기 strcat 함수 구현 코드 char*strcat(char *dest, char *src) { inti; intdi; i = 0; di = 0; while (dest[i] != '\0') //dest 문자열의 마지막 즉, '\0'(NULL문자)가 있는 위치에서 i가 멈춘다. i++; while (src[di] != '\0') //src 문자열의 크기만큼 하나씩 붙인다(복사해온다). { dest[i] = src[di]; i++; di++; } dest[i] = '\0'; //문자열의 마지막을 알리는 '\0'(NULL문자)를 직접 넣어준다. return (dest); } strcat 함수 : dest 문자열에 src 문자열을 이어붙이는 함수 문자열을 조리할 때 머릿속에서만 굴리면 놓치는 부분이 꼭 생깁니다... 2022. 9. 19.
반응형