본문 바로가기

컴퓨터학부 3학년/후반기 학습 포스팅4

Python 변수 스코핑(scoping) 순서 파이썬에는 변수를 아래와 같이 4개의 영역으로 나눈다. 1.지역 변수 영역(local scope) 2. 전역 변수 영역(global scope) 3. 바깥 함수 지역 변수 영역(enclosing function local scope) => 현재 함수 기준으로 밖에서 가장 가까운 변수를 binding 4. 내장 변수 영역(Builtin Scope) 파이썬 스코핑 순서는 "LEGB" 순서다. 말 그대로 지역 변수(Local) -> 바깥 함수(Enclosing function) -> 전역 변수(Global) -> 내장 변수(Builtin) 순서와 같다. 2019. 8. 5.
문자열 인코딩(encoding) "하위 호환성을 위해서 기본적인 내용은 알고 있어야한다."라는 말을 듣고 정리하게 되었습니다. ㅎㅎ 문자열 인코딩 1. ASCII (American Standard Code for Information Interchange) =>최초의 문자열 인코딩으로 7bit로 구성됨 & 128개 문자를 표현할 수 있음 but, ASCII는 '영어를 위한 문자'임 2. ANSI (American National Standard Institute) * ASCII의 확장판 => ANSI(8 bit) = ASCII(7 bit) + CodePage(1 bit) => CodePage를 통해 다른 나라의 언어를 표현할 수 있게 함 3. EUC-KR(Extended Unix Code-Korea) => 한글 지원을 위해 UNIX 계.. 2019. 8. 5.
깃허브(github) 사용법 - 브랜치, PR(Pull Request) 브랜치 : 개발을 하다 보면 코드를 여러 개로 복사해야 하는 일이 자주 생긴다. 코드를 통째로 복사하고 나서 원래 코드와 상관없이 독립적 개발 진행을 할 수 있게 하는 것을 브랜치라고 한다. 1. 브랜치 사용법 1) 브랜치 조회 : git branch => *이 붙어있는 brnach가 HEAD가 가리키는 브랜치 2) 브랜치 만들기 => git branch => git checkout -b ex) git branch issue1 : issue1이라는 이름으로 브랜치 만듦 ex) git checkout -b issue1 : issue1 브랜치 생성 후 HEAD가 issue1을 가리키게 함 3) 브랜치 전환 => 어떤 작업 수행 시 이 브랜치를 사용하겠다고 명시적으로 지정해야 함 => git checkout .. 2019. 6. 27.
C++ STL 공부 내용 포스팅 Container : Generic type의 객체를 보관하는 컨테이너 1) 미리 vector, list 등을 구현해 놓은 것 2) container는 iterator을 무조건 가지고 있어야 한다. * iterator은 '포인터'와 유사한 개념이라고 이해하고 넘어가자. 3) 컨테이너 사용 예시 => 일반적인 상황에서는 그냥 벡터를 사용 => 맨 끝이 아닌 중간에 원소 추가/제거를 하는 일이 많고, 원소들을 순차적으로만 접근 한다면 리스트를 사용 => 맨 처음 또는 끝 모두에 원소들을 추가하는 작업을 많이 하면 덱을 사용 1. Vector : 배열 add/delete 등을 알아서 수행 ('동적 할당 배열'로 봐도 무방) 1) 자료 구조 중간에 배열 값을 넣을 때 비효율적. 즉, update가 자주 일어날 .. 2019. 6. 21.