| 입출력이란?

입출력의 기준은 프로그램 또는 컴퓨터이다.

입력: 프로그램 또는 컴퓨터에 무언가를 주는 것 출력: 프로그램 또는 컴퓨터가 무언가를 주는 것

| 출력 예제

print 함수를 이용하여 "Hello World!를 출력해보자

1
print("Hello World!")
1
2
3
4
5
6
7
8
# helloworld 출력
print("hello" + "world")

# hellohellohellohellohellohellohello 출력
print("hello" * 7)

# helloworldworldworldworldworld 출력
print("hello" + "world" * 5)

| 자료형이란?

여러 종류의 데이터형을 식별하는 분류로, 자료형의 종류로는 정수형, 불린형, 문자형, 실수형 등이 있다.

| 대표적인 자료형

자료형설명예시
정수형정수 숫자를 나타내는 자료형123, 0, -1
실수형실수를 나타내는 자료형3.14
불린ture, false를 나타내는 자료형True, False
문자열문자 하나 또는 문자 조합을 나타내는 자료형“Hello”, “World”

| 자료형을 알아내는 법

type() 함수를 활용하여 자료형을 알아낼 수 있다.

1
2
3
4
5
eee = 3
type(eee)

eee = 'Hello!'
type(eee)

| 자료형이 바르지 않을 때

자료형이 일치하지 않을 때, TypeError가 발생한다.

TypeError는 자료형이 일치하지 않는 두 변수를 연산했을 때 발생한다. 파이썬에서는 컴파일 에러가 아닌 런타임 에러이기에, 작동 전까지는 확인할 수 없다.

이를 해결하기 위해서는 자료형을 일치 시켜주면 된다. 이렇게 자료형을 변환해주는 것을 **캐스팅(Casting)이라고 한다.

| TypeError 해결 예시

문제 상황: 정수 10과 문자열 “20"을 더하는 경우, TypeError가 발생함

1
2
3
4
5
6
7
# 1. 10+20을 원하는 경우, "20"을 정수 20으로 바꿔준다

a = 10
b = "20"

b = int(b)
print(a+b)
1
2
3
4
5
6
7
# 2. "1020"을 원하는 경우, 10을 문자열 "10"으로 바꿔준다

a = 10
b = "20"

a = str(a)
print(a+b)

| 변수란?

변수(variable)는 데이터를 저장할 수 있는 메모리 공간을 의미하며, 변수에 저장된 값은 변경될 수 있다. 쉽게 생각하면 변수는 데이터를 저장하는 상자라고 생각할 수 있다.

| 변수 생성 예제

1
2
3
4
a = 100
b = "hello"

print(a, b)

변수 이름을 지을 때는 다음과 같은 규칙을 지켜야 한다.

  • 글자나 밑줄로 시작할 수 있다.
  • 글자와 숫자, 밑줄로 이루어진다.
  • 대소문자를 구분한다.
  • 예약어(print등)은 변수 이름으로 사용할 수 없다.

| 연산자란?

프로그램의 산술식이나 연산식을 표현하고 처리하기 위해 제공되는 다양한 기호

| 산술 연산자

종류의미
+숫자를 덧셈하거나 문자열을 결합함
-좌항을 우항으로 뺌(또는 부호 변경)
*숫자를 곱하거나, 문자열을 곱한 수 만큼 반복하여 결합함
**좌항을 우항으로 거듭 제곱함
/좌항을 우항을 나눔(실수형)
//좌항을 우항으로 나눔(정수형)
%좌항을 우항으로 나눈 나머지

| 산술 연산자 사용 예시

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
a = 10
b = 3

print( a + b )
print( a - b )
print( a * b )
print( a ** b )
print( a / b )
print( a // b )
print( a % b )

| 그 외의 연산자

대입 연산자, 비교 연산자, 논리 연산자, 멤버 연산자, 증감 연산자 등이 있다.

파이썬에서 a = 100은 a가 100이라는 뜻이 아니다. 여기서 =은 대입 연산자로, 변수 a에 숫자 100을 대입한다는 의미를 가진다.

| 입력이란?

컴퓨터의 사용자가 컴퓨터(프로그램)에 값을 주는 것이다. 키보드로 글이나 숫자를 프로그램에 입력하거나 마우스로 클릭을 하는 행위를 입력이라고 볼 수 있다.

input() 함수를 통해서 사용자의 입력을 받을 수 있다. 입력을 받을 때 까지 프로그램은 멈추게 되며, input() 함수는 문자열을 넘겨준다는 특징이 있다.

1
2
a = input("변수 a에 할당할 값을 입력하세요. :")
print("입력한 값은 : ",a, "입니다!")

| 프로그래밍의 구조

  • 순차 구조
    • 순차적으로 프로그램이 실행된다.
  • 선택 구조
    • 조건의 참/거짓에 따라 다른 구조로 실행된다.
  • 반복 구조
    • 조건의 참/거짓에 따라 동일한 명령이 반복적으로 실행된다.

| 조건식이란?

명시한 조건이 참인지 거짓인지 판별할 수 있는 것으로, 다음과 같은 내용을 조건식이라 한다.

  • 지금 현재 키보드의 스페이스 바를 눌렀는가?'
  • 사용자가 입력한 비밀번호가 정확한가?
  • A > 10 ?

| 비교 연산자란?

피연산자(숫자)의 크기를 판단하여, 참(true)과 거짓 (false)을 반환한다.

종류의미
==값이 동일하다
!=값이 동일하지 않다
>왼쪽 값이 오른쪽 값보다 크다
<왼쪽 값이 오른쪽 값보다 작다
>=왼쪽 값이 오른쪽 값보다 크거나 동일하다
<=왼쪽 값이 오른쪽 값보다 작거나 동일하다
1
2
3
4
print( 100 > 10 )
print( 5 == 5 )
print( 5 != 5 )
print( 50 >= 50 )

| if란?

만약 ~라면 이라는 의미로, 조건문이 참이라면 실행하고, 거짓이라면 실행하지 않는다.

1
2
if 조건식 : 
	코드

다음 코드는 변수 a가 100보다 큰 경우 “a가 100보다 큽니다.“를 출력하는 프로그램이다.

1
2
3
4
a = 200

if a > 100 : 
	print("변수 a는 100보다 큰 수입니다.")

다음 코드는 b 의 값이 True인 경우 “b의 값은 True입니다.“를 출력하는 프로그램이다.

1
2
if b == True : 
	print("변수 b의 값은 True입니다.")

| else란?

“그 외"를 뜻하며, if문과 함께 사용한다. if문 아래에 위치하고 if문의 조건식이 false일 때 실행되는 코드를 작성한다. else문에서는 조건을 적으면 안 된다.

1
2
3
4
if 조건문 : 
	코드1
else : 
	코드2

변수 a가 10보다 크다면 “a가 10보다 큽니다.“를 출력하고, 아니면 “a가 10과 같거나 작습니다.“를 출력한다.

1
2
3
4
if a > 10 : 
	print("a가 10보다 큽니다.")
else : 
	print("a가 10과 같거나 작습니다.")

| elif란?

else if 의 줄임말로, if 의 조건식에서 false 값이 나온 다음, 새로운 조건식으로 참/거짓을 판별 후 참이 나왔을 때, 특정 코드를 실행한다.

1
2
3
4
5
if 조건식 : 
	코드1
elif 조건식2 : 
	코드2
else : 코드3
1
2
3
4
5
6
7
8
a = int(input("a의 값을 입력하세요. : "))

if a > 10 : 
	print("a가 10보다 큽니다.")
elif a == 10 : 
	print("a는 10입니다.")
else : 
	print("a가 10보다 작습니다.")

| 논리 연산자란?

참(True) / 거짓(False)을 연산하는 연산자로, 연산의 결과 또한 참(True) / 거짓(False) 중 하나이다.

연산자설명
and논리곱 (둘 다 참일 때만 참을 출력한다)
or논리합 (하나만 참이어도 참을 출력한다)
not논리 부정