데이터 타입 가변(mutable) list, set, dict 불변(immutable) int, float, bool, tuple, string, unicode 코어 데이터 타입 분류 가변(mutable) : list, set, dict 불변(immutable) : 숫자, bool, tuple, 문자열 불변성(immutable) 파이썬에서는 문자열은 변경할 수 없다. 다시 말해 문자열은 생성된 위치에서 변경될 수 없다. 이를 불변성이라고 하고 이 때문에 모든 문자열 연산은 새로운 문자열을 생성하도록 정의되어 있다. 불변(immutable)객체의 값은 절대 덮어쓸 수 없다. a = "python" print(a[0]) #--==>> p a[0] = "P" #--==>> 'str' object does no..
이 글은 파이썬 3 기준으로 작성되었다. 나누기 연산 / '/' 연산자는 나머지도 포함된 일반적인 나누기를 수행한다. // '//' 연산자는 소수 나머지 부분을 잘라내고, 정수 피연산자에 대해서는 정수를 반환하며, 부동 소수점 피 연산자가 하나라도 있는 경우에는 부동 소수점 수를 반환하는 반내림(Floor)를 수행한다. 반내림 vs 버림 // 연산자는 비공식적으로 버림(truncating) 나누기라고 불리지만, 반내림(Floor)나누기 라고 부르는 것이 더 정확하다. // 연산자는 낮은 값을 기준으로 나눈 결괏값의 소수 부분을 잘라낸다. 즉 / 나누기 결과에서 가까운 낮은 정수값을 의미한다. 이는 단순히 소수 부분을 잘라내는 것과는 차이가 존재한다. 특히 음수 값에 적용될 때 더 중요하다. 이 차이는 m..
리스트 컴프리헨션(List Comprehension) 파이썬은 리스트 컴프리헨션 표현식(list comprehension expression)이라는 고급 연산을 제공한다. 리스트 컴프리헨션은 (반환값으로 리스트를 만든다는 것을 암시하기 위해) 대괄호 안에 작성되며 표현식과 변수 이름을 공유하는(여기서는 row) 반복 구조로 구성된다. list_ = [1, 2, 3] list_ = [x + 1 for x in list_] print(list_) #--==>> [2, 3, 4] 리스트 컴프리헨션은 새로운 리스트를 만드는 방법이기 때문에 대괄호로 작성된다. 대괄호 안에 표현식(x + 1)을 작성하고 이후 for루프의 헤더부분과 같은 식을 작성한다. 그러면 인터프리터 내부에서 list_ 를 반복해서 값을 꺼내 ..
클래스형 컴포넌트와 함수형 컴포넌트 클래스형 컴포넌트 import {Component} from "react"; class App extends Component { render() { return ( ); } } export default App; 클래스형 컴포넌트는 리액트의 모든 기능을 활용할 수 있다. 함수형 컴포넌트 function App() { return ( ); } export default App; 함수형 컴포넌트는 기능이 부족했었다. state를 컴포넌트 내부에 만들 수 없다는 것과 라이프사이클 API도 사용할 수 없었다. 그래서 함수형 컴포넌트는 상위 컴포넌트가 전달하는 일만 단순하게 처리하는 역할이었다. 하지만, Hook이라는 개념이 도입되면서 함수형 컴포넌트에서도 state를 다룰 ..
undefined와 null 둘 다 Primitive Type(원시 타입)입니다. 우선 Primitive Type이 무엇인지 알아보고 이 둘의 차이점을 보겠습니다. Primitive Type 다른 언어와 마찬가지로 JavaScript의 언어 타입도 크게 Primitive Type(원시 타입)과 Reference Type(참조 타입)으로 나뉩니다. 이 둘은 메모리에 저장되는 방식에 따라 나뉩니다. Primitive Type과 Reference Type의 차이점은 Premitive Type은 실제 데이터 값을 저장하고 Reference Type은 객체의 번지 주소를 저장해 메모리 번지 값을 통해 객체를 참조하는 타입입니다. Premitive Type은 변경 불가능한 Immutable Type이고, Refer..
Event란? 이벤트란 간단하게 일어나는 사건 혹은 발생인데, 웹에서는 유저가 버튼을 클릭하거나 비디오 재생이 멈추는 등 이러한 다양한 사건들을 이벤트라고 할 수 있습니다. Event Bubbling이란? Event Bubbling이란 한 요소에서 이벤트가 발생했을 때 해당 이벤트가 부모 요소들로 전달되어 가는 특성을 말합니다. form form 안에 있는 div form 안에 있는 div 안에 있는 p 이 경우 p태그 안에 요소만을 클릭해도 p의 이벤트 핸들러가 동작해 alert 창이 뜨고 클릭한 이벤트가 부모 요소들로 전달되어 div, form 각각의 이벤트 핸들러가 동작해 div의 alert 창이 뜨고, form의 alert 창의 뜸을 알 수 있습니다. 이러한 흐름을 Event Bubbling이라고..