[Python] is에 대해서, 그리고 재미있는 문제 하나 포스팅 썸네일 이미지

Coding_Algorithm/Python

[Python] is에 대해서, 그리고 재미있는 문제 하나

1. 비교연산자 'is'에 대하여 is는 python에서 ==과 더불어 python에서 쓸 수 있는 비교문 중 하나입니다. 두 비교문의 차이는 다음과 같습니다. is는 변수가 같은 Object(객체)를 가리키면 True ==는 변수가 같은 Value(값)을 가지면 True is는 객체 자체를 본다면, ==는 값을 확인합니다. 이렇게만 하면 감이 안오기때문에 직접 예시로 봅시다. 우선 간단한 ==예시를 보여드리겠습니다. 너무나도 당연한 과정이죠? 그럼 같은 예시를 is를 가지고 해봅시다. is는 "값"이 같은지 보는게 아니라, "객체"가 같은지 확인해서 그렇습니다. 비록 같은 값이여도, 다른 객체(object)이기 때문에 False를 반환하는 것을 볼 수 있습니다. 이외는 직접 코드를 작성해주시면서 확인하..

2021.04.11 게시됨

[Python] 레퍼런스(reference)에 대해서 포스팅 썸네일 이미지

Coding_Algorithm/Python

[Python] 레퍼런스(reference)에 대해서

안녕하세요, 오늘은 레퍼런스에 대해서 이야기하려고 합니다. 공부하다가 흥미로운 점을 찾아서유 0. 레퍼런스란? 우선 레퍼런스가 뭔지부터 알아봅시다. C언어와 달리 Python에서는 "주소"라는 개념이 없습니다. 대신 레퍼런스라는 개념이 있고, 이 레퍼런스를 얻기 위해서는 id()함수를 사용합니다. 아래 정의를 봅시다. id(object) Return the “identity” of an object. This is an integer which is guaranteed to be unique and constant for this object during its lifetime. Two objects with non-overlapping lifetimes may have the same id() valu..

2021.04.10 게시됨

[Kernel] System Call에 대하여 포스팅 썸네일 이미지

Coding_Algorithm/Operating System

[Kernel] System Call에 대하여

System Call 오늘은 System Call에 대해서 정리해볼겁니다. 포너블하면서 겉핥기한정도가 끝인데, 제대로 배워보니 생각보다 복잡하네요. 각설하고, 바로 설명 시작해봅시다. 0. 인터럽트(Interrupt)란? 결론만 이야기하면, System Call도 결국 소프트웨어 인터럽트의 일종이라, 인터럽트에 대해서 알고 갈 필요가 있을 것 같습니다. 우선 OS는 기본적으로 User 모드와 Kernel 모드로 나뉘어져 있습니다. 안전을 위해서 각 모드에서 할 수 있는 일이 다릅니다. User Mode : I/O나 Protected Instruction을 포함해서 사용시 문제가 될 수 있는 주소 영역에 대해 접근 불가능 Kernel Mode : I/O devices를 포함해서 모든 주소 영역이 접근 가능..

2021.04.02 게시됨

[C/C++] sprintf, snprintf 포스팅 썸네일 이미지

Coding_Algorithm/C_C++

[C/C++] sprintf, snprintf

맨날 공부해놓고 맨날 까먹어서 답답해서 쓰는 글입니다 sprintf/snprintf의 원형 우선 sprintf, 그리고 snprintf의 원형을 봅시다. int sprintf (char *buffer, const char *format, ...) int snprintf (char *buffer, int buf_size, const char *format, ...) 필요헤더: stdio.h 파라미터: *buffer : 버퍼 변수 buf_size : 가져올 크기(snprintf만 해당) *format : 포멧 리턴값 : 문자열의 길이 대충 printf와 비슷한 느낌인데 뭐가 다르냐면 buffer 변수에 형식에 따라 만들어진 문자열이 저장된다는 점이 다릅니다. 비교를 하자면 printf는 화면에 출력하고, s..

2021.03.04 게시됨

프로그래밍 언어에서의 추상화(Abstraction in OOP) 포스팅 썸네일 이미지

Coding_Algorithm

프로그래밍 언어에서의 추상화(Abstraction in OOP)

Abstraction in OOP(Object Oriented Programming) 이 글은 아래의 글을 참고했습니다. : stackify.com/oop-concept-abstraction/ OOP Concept for Beginners: What is Abstraction? Abstraction is one of the key concepts of object-oriented programming (OOP) languages. Read examples to better handle complexity. stackify.com 객체지향 프로그래밍 언어에서 추상화는 매우 중요한 개념입니다. 저도 추상화가 뭔지 알고는 있지만, 남에게 설명해보라고 했을 때 자연스럽고, 남이 충분히 받아들일 수 있을 만큼 구..

2021.03.04 게시됨

[정올] Language Coder_선택제어문_자가진단7_code534 (Python) 포스팅 썸네일 이미지

Coding_Algorithm/정올 문제풀이

[정올] Language Coder_선택제어문_자가진단7_code534 (Python)

grade = input().strip() if grade == "A": print("Excellent") elif grade == "B": print("Good") elif grade == "C": print("Usually") elif grade == "D": print("Effort") elif grade=="F": print("Failure") else: print("error") +) input()으로 받는게 아니라 .strip()으로 한번 더 받는 이유는 우리가 입력을 하면 엔터까지 하게 됩니다. 그러면 입력은 사실상 "A", "B", "C",... 의 식으로 입력되는게 아니라 "A ", "B ", "C "의 방식으로 받아들이기 때문에 다른 문자열이라고 인식하게 됩니다. 따라서 뒤에 입력되는 ..

2021.02.02 게시됨