Expression (식)
개념
- 하나 이상의 “값”으로 표현될 수 있는 코드
- 평가가 가능해서 하나의 “값”으로 환원된다.
- 수식
- function call()
- 변수 이름 등의 식별자
- 배열 등의 할당 연산자( [] ) 등도 포함
def get(n):
return n
a, b, c = 1, 2, 3
arr = [1, 2, 3]
1 + 2 + 3 -> 6
a + b -> 3
arr[2] -> 3
get(5) -> 5
10 -> 10
# 1, 2, 3, 4, 5
는 전부 expression 이다.
eval 함수
- str 형태의 expression을 argument로 받아 -> 평가해 -> 그 값을 반환하는 함수
a, b = 4, 5
eval('1 + 2 + 3')
eval('a + b')
6
9
Statement (문)
기초
- 서술
- 실행가능한 최소의 독립적인 코드 조각
- 컴파일러가 이해하고 실행할 수 있는 모든 구문
- statement는 흔히
- 1개 이상의 expression + 프로그래밍 키워드
a = 3
a, b = 2, 3
if is_valid:
return 4
# 1
- 변수에 할당하는 할당 statement
- 평가되어 하나의 값을 반환하지 않는다.
- 이 statement에는 ‘3’이라는 expression이 쓰이고 있다.
# 3
- 컴퓨터가 실행 가는한 statement
- if 라는 python keyword가 사용되었다.
# 4
- return statement
- 이 또한 컴퓨터가 실행 가능
exec 함수
- 문자열 형태의 statement를 실행하는 내장 함수
- 예시
- ‘r1’, ‘r2’, …, ‘r20’ 이라는 변수를 만들고, 1부터 20까지 할당하고 싶은데, 코드는 깔끔하게 짜고 싶을 때
for i in range(1, 20+1):
exec('r' + str(i) + ' = ' + str(i))
r1
r2
r3
...
1
2
3
...