A A
[Python] Python - 변수와 자료형, 연산, 조건, 반복문

변수

변수는 데이터를 저장하는 메모리 공간을 명명한 것입니다. 변수를 통해 데이터를 저장하고, 저장된 데이터를 참조하거나 변경할 수 있습니다.
  • Python에서는 변수를 선언할 때 타입을 명시하지 않으며, 변수에 값을 할당할 때 자동으로 타입이 결정됩니다.
  • 예시코드: 변수 선언과 초기화
x = 10  # 정수형 변수
name = "Alice"  # 문자열 변수
is_active = True  # 불린형 변수

 

변수 이름 규칙

  • 변수 이름은 문자, 숫자, 밑줄(_)로 구성될 수 있습니다.
  • 변수 이름은 숫자로 시작할 수 없습니다.
  • 변수 이름은 대소문자를 구분합니다 (예: age와 Age는 다른 변수).
  • 예약어는 변수 이름으로 사용할 수 없습니다 (예: if, while, class 등).

자료형

자료형은 변수가 저장하는 데이터의 종류를 의미합니다. Python의 주요 자료형은 다음과 같습니다.

 

  • 숫자형: 정수(int), 실수(float)
  • 문자열: 문자(str)
  • 불린형: bool(True, False)

숫자형

  • 정수(int): 정수 값을 저장하는 자료형입니다.
age = 25

 

  • 실수(float): 실수 값을 저장하는 자료형입니다.
height = 175.5

문자열

  • 문자열(str): 문자나 문자열 값을 저장하는 자료형입니다. 큰따옴표(" ") 또는 작은따옴표(' ')를 사용하여 문자열을 정의할 수 있습니다.
greeting = "Hello, World!"
  • 불린형(bool): 참(True) 또는 거짓(False) 값을 저장하는 자료형입니다.
is_valid = True

 

기타 자료형

  • 리스트(list): 여러 값을 저장할 수 있는 시퀀스 자료형입니다.
fruits = ["apple", "banana", "cherry"]
  • 튜플(tuple): 리스트와 비슷하지만 변경할 수 없는 시퀀스 자료형입니다.
dimensions = (1920, 1080)
  • 딕셔너리(dict): 키-값 쌍을 저장할 수 있는 자료형입니다.
person = {"name": "Alice", "age": 30}

자료형 변환

자료형 변환은 변수가 저장하고 있는 데이터의 종류를 다른 자료형으로 변환하는 과정을 의미합니다.
Python에서는 내장 함수를 사용하여 자료형을 변환할 수 있습니다.
  • 정수형으로 변환: int()
    • 문자열이나 실수를 정수로 변환할 때 사용합니다.
num_str = "10"
num_int = int(num_str)  # 문자열을 정수로 변환
print(num_int)  # Output: 10

 

  • 실수형으로 변환: float()
    • 문자열이나 정수를 실수로 변환할 때 사용합니다.
num_str = "10.5"
num_float = float(num_str)  # 문자열을 실수로 변환
print(num_float)  # Output: 10.5

 

  • 문자열로 변환: str()
    • 숫자나 다른 자료형을 문자열로 변환할 때 사용합니다.
num = 10
num_str = str(num)  # 정수를 문자열로 변환
print(num_str)  # Output: "10"

기본 연산

  • 덧셈 (+): 두 값을 더합니다.
a = 5
b = 3
print(a + b)  # Output: 8
  • 뺄셈 (-): 두 값의 차를 구합니다.
print(a - b)  # Output: 2
  • 곱셈 (*): 두 값을 곱합니다.
print(a * b)  # Output: 15
  • 나눗셈 (/): 두 값을 나누며, 결과는 실수형입니다.
print(a / b)  # Output: 1.6666666666666667
  • 몫 (//): 두 값을 나눈 몫을 구합니다.
print(a // b)  # Output: 1
  • 나머지 (%): 두 값을 나눈 나머지를 구합니다.
print(a % b)  # Output: 2

비교 연산

비교 연산자는 두 값을 비교하여 불린형 결과(True 또는 False)를 반환합니다.
  • 같음 (==): 두 값이 같은지 비교합니다.
print(a == b)  # Output: False
  • 다름 (!=): 두 값이 다른지 비교합니다.
print(a != b)  # Output: True
  • 크다 (>): 왼쪽 값이 오른쪽 값보다 큰지 비교합니다.
print(a > b)  # Output: True
  • 작다 (<): 왼쪽 값이 오른쪽 값보다 작은지 비교합니다.
print(a < b)  # Output: False
  • 크거나 같음 (>=): 왼쪽 값이 오른쪽 값보다 크거나 같은지 비교합니다.
print(a >= b)  # Output: True
  • 작거나 같음 (<=): 왼쪽 값이 오른쪽 값보다 작거나 같은지 비교합니다.
print(a <= b)  # Output: False

논리 연산

논리 연산자는 불린형 값들 간의 논리적 관계를 연산합니다.
  • AND (and): 두 조건이 모두 참일 때 참을 반환합니다.
x = True
y = False
print(x and y)  # Output: False
  • OR (or): 두 조건 중 하나라도 참이면 참을 반환합니다.
print(x or y)  # Output: True
  • NOT (not): 조건의 반대를 반환합니다.
print(not x)  # Output: False

조건문

조건문은 특정 조건에 따라 코드 블록을 실행하는 구조로, 프로그램의 흐름을 제어하는 데 사용됩니다.

if 문

  • 조건이 참인 경우에만 코드 블록을 실행합니다.
a = 10
if a > 5:
    print("a는 5보다 큽니다.")  # Output: a는 5보다 큽니다.

 

if - else 문

  • 조건이 참인 경우와 거짓인 경우 각각 다른 코드 블록을 실행합니다.
a = 3
if a > 5:
    print("a는 5보다 큽니다.")
else:
    print("a는 5보다 작거나 같습니다.")  # Output: a는 5보다 작거나 같습니다.

if - elif - else 문

  • 여러 조건을 검사하여 각각의 조건에 맞는 코드 블록을 실행합니다.
a = 7
if a > 10:
    print("a는 10보다 큽니다.")
elif a > 5:
    print("a는 5보다 큽니다.")  # Output: a는 5보다 큽니다.
else:
    print("a는 5보다 작거나 같습니다.")

반복문

반복문은 코드 블록을 조건 혹은 시퀀스에 따라 여러 번 실행하는 구조입니다. 이를 통해 동일한 작업을 여러 번 수행할 수 있습니다.

for 문

  • for 문은 시퀀스 자료형(리스트, 튜플, 문자열 등)의 요소를 순회하면서 반복합니다.
fruits = ["apple", "banana", "cherry"]
for fruit in fruits:
    print(fruit)
apple
banana
cherry

for 문 + range()

  • for 문과 range() 함수를 사용하여 지정한 범위 내에서 반복할 수 있습니다. range() 함수는 지정된 범위의 숫자를 생성합니다.
for i in range(5):
    print(i)
0
1
2
3
4

 

  • range() 함수의 다양한 사용법:
# 기본 사용법: range(stop)
for i in range(5):  # 0부터 4까지
    print(i)

# 시작값과 끝값 지정: range(start, stop)
for i in range(1, 5):  # 1부터 4까지
    print(i)

# 시작값, 끝값, 증가값 지정: range(start, stop, step)
for i in range(1, 10, 2):  # 1부터 9까지 2씩 증가
    print(i)

 

while 문

  • while 문은 조건이 참인 동안 반복을 수행합니다. 조건이 거짓이 되면 반복을 종료합니다.
count = 0
while count < 5:
    print(count)
    count += 1
0
1
2
3
4

 

break

  • break 문은 반복문을 즉시 종료합니다. break 문이 실행되면 반복문은 더 이상 진행되지 않습니다.
for i in range(10):
    if i == 5:
        break
    print(i)
0
1
2
3
4

 

continue

  • continue 문은 현재 반복을 종료하고, 다음 반복으로 이동합니다.
  • continue 문이 실행되면 이후의 코드 블록은 실행되지 않고 다음 반복이 시작됩니다.
for i in range(10):
    if i % 2 == 0:
        continue
    print(i)
1
3
5
7
9