[파이썬 심화] 7. 할당 및 기타 문장 처리하기◎ Python/파이썬 심화 (책)2022. 8. 29. 22:06
Table of Contents
반응형
변수에 값을 할당(assignment)하다
파이썬은 변수를 정의하면 이름공간에 변수의 이름을 Key로 만들고 객체를 값으로 저장한다. 이름공간이 딕셔너리이기 때문! 이러한 할당문은 모듈, 함수, 클래스 등 다양한 곳에 정의할 수 있다.
여러 값을 여러 변수에 할당하려면 원소의 개수가 같아야 한다. 개수가 같지 않다면 예외가 발생한다!
x, y, z = 1, 2, 3
x, y, z = [1, 2, 3]
x, y, z = (1, 2, 3)
물론 변수와 원소의 개수가 같지 않아도 패킹을 이용해 남는 원소를 리스트로 묶어버릴 수 있다.
x, *y = 1, 2, 3
x, y
[결과]
(1, [2, 3])
사용하지 않는 변수는 어떻게 처리할까?
보통 파이썬에서는 관용적으로 사용하지 않는 변수를 _로 처리한다. 이는 for문에서 자주 볼 수 있다.
for _ in range(3):
print("Hello World!")
[결과]
Hello World!
Hello World!
Hello World!
map 클래스는 어느 상황에서 사용할까?
map() 함수는 built-in 함수로 list 나 dictionary 와 같은 iterable (반복 가능한)한 데이터를 인자로 받아 list 안의 개별 item을 함수의 인자로 전달하여 결과를 list로 형태로 반환해 주는 함수다.
다시 설명하자면 첫 번째 인자에 함수, 두 번째 인자에 반복 가능한(iterable) 자료형을 입력한다. 결괏값은 map 타입으로 지정되기 때문에 list로 변형해서 사용해야 한다.
간단한 예제들을 보자.
import math
m = map(math.sqrt, [1, 2, 3, 4])
print(m)
[결과]
<map object at 0x0000026A63559810>
결과가 그냥 map 클래스로 나오는 것을 알 수 있다. 이를 뜯어서 보려면 언패킹하거나 for문을 사용할 수 있다.
# 방법 1
for i in m:
print(i)
[결과]
1.0
1.4142135623730951
1.7320508075688772
2.0
# 방법 2
[*m]
[결과]
[1.0, 1.4142135623730951, 1.7320508075688772, 2.0]
방법 2인 [*m]은 m을 언패킹해 모든 요소를 나열한 후 리스트로 묶어준다는 뜻이다.
참고
- 한권으로 개발자가 원하던 파이썬 심화 A to Z, 문용준/문성혁 저
반응형
'◎ Python > 파이썬 심화 (책)' 카테고리의 다른 글
[파이썬 심화] 9. 여러 문장을 묶어 반복 실행하기 (0) | 2022.08.31 |
---|---|
[파이썬 심화] 8. 조건 판단에 따른 문장 선택하기 (0) | 2022.08.30 |
[파이썬 심화] 6. 문서화와 주석으로 꾸미기 (1) | 2022.08.28 |
[파이썬 심화] 5. 문장 꾸미기 (0) | 2022.08.27 |
[파이썬 심화] 4. 객체를 생성한 클래스가 자료형이다 (0) | 2022.08.24 |
@Reo :: 코드 아카이브
자기계발 블로그