211121 파이썬 코딩도장 공부일지 (UNIT 4~6)

시스타나·2021년 11월 21일
0
post-custom-banner

UNIT 4. 기본 문법 알아보기

- 세미콜론

파이썬은 C/C++와 달리 문장 끝에 세미콜론(;)을 붙이지 않는다.
세미콜론을 붙여도 문법 에러는 발생하지 않지만,
한 줄에 여러 개의 문장을 쓰고 싶을 때는 세미콜론을 쓴다.

- 주석

줄 앞에 #를 쓰면 그 부분부터 모두 주석 처리가 된다.

- 들여쓰기

if의 다음 문장처럼, 파이썬에서는 들여쓰기가 문법이므로 아주 중요하다.
들여쓰기는 공백 2/4칸, 탭을 사용해도 되지만 정석은 공백 4칸이다.
파이썬에서는 코드 블록도 들여쓰기가 같은 지를 기준으로 구분한다.

UNIT 5. 숫자 계산하기

파이썬은 5 / 2와 같이 계산해도 2.5라고 알아서 실수로 출력된다.
그런데 4 / 2와 같은 경우에도 2.0으로 실수로 출력된다.
나눗셈이 완전히 나누어 떨어져도 실수로 나옴을 알 수 있다.

혹시 나눗셈의 결과가 실수가 아닌 정수로 만들고 싶다면 '//'를 사용하면 된다.

5 // 2
2

'//' : 버림 나눗셈(floor division)
그런데, 실수에 //를 사용하면 결과는 실수가 나오며 소수점 이하는 버리게 되어 있어서 항상 .0 으로 출력된다.

1) 5.5 // 2
2.0
2) 4 // 2.0
2.0

나눗셈 후 나머지를 구하는 % (modulo) 연산자도 있다. 이 때의 몫은 //로 구하면 된다.

5 % 2
1

거듭제곱을 구하고 싶다면 **를 사용하면 된다.

2 ** 10
1024

실수값을 강제적으로 정수로 만들고 싶을 때는 int에 괄호를 붙이고 숫자 또는 계산식을 넣으면 된다.

1) int(3.3)
3
2) int (5 / 2)
2
3) int ('10')
10

객체의 자료형을 알아내고 싶을 때는 type 함수를 사용한다.

type(10)
<class 'int'>

파이썬에서는 숫자도 객체(object)이고, 객체는 클래스(class)로 표현한다. 앞에서 사용한 int(3.3)은 실수 3.3을 int 클래스로 된 객체로 만든다는 의미이다.
또, 괄호를 사용하면 괄호 안의 계산식을 먼저 계산해준다.

UNIT 6. 변수와 입력 사용하기

파이썬에서는 x = 10와 같은 방식으로만 입력하면 변수가 생성됨과 동시에 값이 할당된다.
또, 파이썬에서는 변수를 입력한 뒤 엔터 키를 누르면 변수에 저장된 값이 출력된다.
변수에는 문자열도 넣을 수 있다. ex) y = 'hello, world!'
아래와 같이 입력하면 변수 여러 개를 한 번에 만들 수도 있다.

x, y, z = 10, 20, 30

변수 여러 개를 만들 때 값이 모두 같아도 된다면?

x = y = z = 10

위와 같이 생성할 수도 있다.

그렇다면 두 변수의 값을 서로 바꾸고 싶을 때는 어떻게 해야할까?

x, y = y, x

변수를 삭제할 때는 del을 사용한다

x = 10
del x
이후에 x를 입력하고 엔터를 치면 아래와 같이 출력된다.
NameError: name 'x' is not defined

비어있는 변수를 만들고 싶을 때는 아래처럼 입력한다.
None이란, 아무것도 없는 상태를 의미한다. (C/C++에서는 null)

x = None

# 입력 값을 변수에 저장하고 싶을 때

입력 값을 변수에 저장하고 싶을 때는 input() 함수를 이용한다.
input()을 입력한 다음에 엔터 키를 누르면 다음 줄로 넘어가고, 이 상태에서 엔터 키를 누르면 입력한 문자열이 그대로 출력된다.

(예시) >>> input()
Hello, world! (사용자가 입력한 내용)
'Hello, world!' (출력된 내용)

변수에 입력된 값을 저장하고 싶다면?

(예시) >>> x = input()
Hello, world! (사용자가 입력한 내용)

이 이후에 x 만을 입력하고 엔터 쳐보면 입력한 내용이 그대로 출력되어 x에 성공적으로 저장되었음을 알 수 있다.
주의할 점은, input으로 입력받은 값은 모두 문자열로 인식된다는 것이다.

(예시) a = input('첫 번째 숫자를 입력하세요:')
b = input('두 번째 숫자를 입력하세요:')
print(a+b)

이렇게 코딩했을 때, a에 10, b에 20을 입력하면 30이 출력될거 같지만 실제로는 1020이 출력된다. 이 문제를 해결하기 위해서는 아래와 같이 고쳐야한다.

(예시) a = int(input('첫 번째 숫자를 입력하세요:'))
b = int(input('두 번째 숫자를 입력하세요:'))
print(a+b)

profile
임베디드 개발자가 되고싶은 코린이🐣
post-custom-banner

0개의 댓글