diff --git a/doc/03_data_types.md b/doc/03_data_types.md index 5e21059..2719f61 100644 --- a/doc/03_data_types.md +++ b/doc/03_data_types.md @@ -3,6 +3,7 @@ ## 변수 ### 변수의 선언 및 할당 +파이썬에서 변수는 할당과 함께 선언됩니다. ```python a = 100 @@ -14,6 +15,12 @@ x, y, z = 100, 200, 300 # x=100, y=200, z=300 i = j = k = 10 # i=10, j=10, k=10 ``` +할당된 변수의 메모리 상 번지를 확인하려면, `id()`를 사용합니다. +```python +a = 123 +id(a) +``` + ### 객체의 자료형 확인 ```python @@ -22,18 +29,25 @@ type(a) # type() 함수는 자료형을 반환합니다. ### 형변환 +자료형을 함수명으로 사용하면 형변환을 할 수 있습니다. + ```python int(3.3) # 3 int('100') # 100 float(3) # 3.0 ``` +그 외에 `chr()`, `unichr()`, `hex()`등의 형변환 함수도 있습니다. + ### 변수 삭제 +할당된 변수를 제거하려면 `del`을 사용합니다. ```python x = 100 del x ``` +### 상수 +파이썬에는 상수가 없습니다. 관례적으로 대문자 이름을 사용합니다. ### 스왑 @@ -43,6 +57,14 @@ x, y = y, z ``` ## 자료형 +* int, float, complex +* str +* list, tuple, range +* bytes, bytearray, memoryview +* dict +* set, frozenset +* bool +* None ### 숫자 @@ -188,4 +210,15 @@ d = "It's me." # 불변 세트를 만들려면 frozenset()를 사용합니다. c = frozenset('apple', 'orange', 'banana') # Immutable 세트는 값을 수정할 수 없습니다. + ``` + + ### 이진 데이터 + - bytes + 각 아이템은 0~255 사이의 정수값을 갖습니다. + - bytearray + `bytes`와 달리 가변 데이터입니다. + + ```python + b1 = bytes([65, 66, 67, 68, 69]) + b2 = bytearray([72, 101, 108, 108, 111]) ``` \ No newline at end of file diff --git a/doc/06_flow_controls.md b/doc/06_flow_controls.md index 1677749..b7d51ca 100644 --- a/doc/06_flow_controls.md +++ b/doc/06_flow_controls.md @@ -2,6 +2,8 @@ ## 조건문 +### if + `if`문의 조건식 뒤에 콜론(`:`)을 붙이고 `if` 블록은 들여쓰기를 합니다. ```python @@ -24,9 +26,42 @@ elif 조건식: else: 실행문 ``` +### match + +Python 3.10에서 추가된 문법입니다. + +```python +match (n): + case 1: return 'One' + case 2: return 'Two' + case _: return 'Many' +``` + +```python +case "a" | "b" : return "A or B" +``` + +```python +case [time, name] : + return f"{time}, {name}!\n" +case [time, *names] : + msg = '' + for name in names: + msg += f"{time}, {name}!\n" + return msg +``` + +```python +case [item, amount] if amount < 1000: + return amount * 1.2 +case [item, amount] if amount >=1000: + return amount * 1.5 +``` ## 반복문 +### for in + ```python for 변수 in range(횟수): 실행문 @@ -47,6 +82,16 @@ for idx, val in enumerate(a): print(idx, val) ``` +```python +for i in a: + # 반복적으로 처리. +else: + # 반복문이 정상적으로 종료될 떄 한 번만 수행됩니다. + # break 등으로 반복이 종료되면 이 블록은 실행되지 않습니다. +``` + +### while + ```python while 조건식: 실행문 @@ -59,6 +104,13 @@ while i <= len(a): i += 1 ``` +```python +while i<10: + # ... +else: + # ... +``` + ## 그 외 ### break