파이썬을 쓸 일이 많지는 않지만 가끔 사용해서 정리해봤습니다.
1. 파이썬 자료형
숫자형
파이썬에서는 숫자를 표현하는 데 다양한 자료형을 제공합니다. 가장 기본적인 숫자형 자료형은 다음과 같습니다.
- 정수형(int): 소수점이 없는 정수를 표현합니다. 예를 들어, **age = 25**와 같이 사용할 수 있습니다.
- 실수형(float): 소수점이 있는 숫자를 표현합니다. 예를 들어, **pi = 3.14**와 같이 사용할 수 있습니다.
a = 10
b = 3
## 사칙연산, 제곱, 몫
addition = a + b # 13
subtraction = a - b # 7
multiplication = a * b # 30
division = a / b # 3.3333333333333335
exponentiation = a ** b # 1000
quotient = a // b # 3
문자열
문자열은 텍스트를 표현하는 데 사용되는 자료형입니다.
파이썬에서는 작은따옴표('')나 큰따옴표("")로 감싸서 문자열을 표현합니다.
name = "Alice"
message = '안녕, ' + name + '!'
print(message) # 안녕, Alice!
문자열은 문자들의 나열이기 때문에 각 문자에 접근하기 위해 인덱스를 사용할 수 있습니다.
파이썬에서는 0부터 시작하는 인덱스를 사용합니다.
슬라이싱을 통해 범위를 지정하여 부분 문자열에 접근할 수도 있습니다.
text = "Hello, World!"
print(text[0]) # H
print(text[7:]) # World!
리스트형
리스트는 여러 개의 값을 하나의 변수에 저장하기 위해 사용되는 자료형입니다.
대괄호 [] 안에 원하는 값을 콤마로 구분하여 나열하여 리스트를 생성할 수 있습니다.
리스트에는 숫자, 문자열, 다른 자료형의 요소들을 혼합하여 포함시킬 수도 있습니다.
fruits = ['사과', '바나나', '딸기', '수박']
numbers = [1, 2, 3, 4, 5]
mixed_list = ['Alice', 25, True]
print(fruits) # ['사과', '바나나', '딸기', '수박']
print(numbers) # [1, 2, 3, 4, 5]
print(mixed_list) # ['Alice', 25, True]
리스트의 각 요소에는 인덱스를 사용하여 접근할 수 있습니다.
인덱스는 0부터 시작하며, 음수 인덱스를 사용하여 뒤에서부터 접근할 수도 있습니다.
또한, 슬라이싱을 사용하여 부분 리스트를 추출할 수도 있습니다.
fruits = ['사과', '바나나', '딸기', '수박']
print(fruits[0]) # 사과
print(fruits[-1]) # 수박
print(fruits[1:3]) # ['바나나', '딸기']
리스트끼리의 연산도 가능합니다.
fruits1 = ['사과', '바나나']
fruits2 = ['딸기', '수박']
combined = fruits1 + fruits2 # ['사과', '바나나', '딸기', '수박']
repeated = fruits1 * 3 # ['사과', '바나나', '사과', '바나나', '사과', '바나나']
print(combined)
print(repeated)
리스트의 길이를 구하기 위해서는 len() 함수를 사용할 수 있습니다.
fruits = ['사과', '바나나', '딸기', '수박']
length = len(fruits)
print(length) # 4
튜플
튜플은 리스트와 유사한 자료형으로, 값을 변경할 수 없는 불변형 자료형입니다.
튜플은 괄호 ()를 사용하여 생성하며, 리스트와 마찬가지로 다양한 자료형의 요소들을 혼합하여 포함시킬 수 있습니다.
person = ('Alice', 25, 'Seoul')
print(person) # ('Alice', 25, 'Seoul')
튜플의 요소에 접근하기 위해서는 인덱스를 사용할 수 있습니다.
리스트와 마찬가지로 인덱스는 0부터 시작하며, 음수 인덱스를 사용하여 뒤에서부터 접근할 수도 있습니다.
person = ('Alice', 25, 'Seoul')
print(person[0]) # Alice
print(person[-1]) # Seoul
튜플은 불변형 자료형이기 때문에 값을 변경하거나 요소를 추가할 수 없습니다. 하지만, 튜플끼리의 연산과 결합은 가능합니다.
fruits1 = ('사과', '바나나')
fruits2 = ('딸기', '수박')
combined = fruits1 + fruits2
repeated = fruits1 * 3
print(combined) # ('사과', '바나나', '딸기', '수박')
print(repeated) # ('사과', '바나나', '사과', '바나나', '사과', '바나나')
딕셔너리
딕셔너리는 키(key)와 값(value)을 쌍으로 저장하는 자료형입니다.
중괄호 {}를 사용하여 딕셔너리를 생성하며, 각 키와 값은 콜론(:)으로 구분합니다.
person = {
'name': 'Alice',
'age': 25,
'city': 'Seoul'
}
print(person) # {'name': 'Alice', 'age': 25, 'city': 'Seoul'}
딕셔너리의 값에 접근하기 위해서는 해당 키를 사용합니다.
person = {
'name': 'Alice',
'age': 25,
'city': 'Seoul'
}
print(person['name']) # Alice
print(person['age']) # 25
딕셔너리는 값을 변경하거나 추가할 수 있습니다.
person = {
'name': 'Alice',
'age': 25,
'city': 'Seoul'
}
person['age'] = 26 # 값 변경
person['gender'] = 'Female' # 값 추가
print(person) # {'name': 'Alice', 'age': 26, 'city': 'Seoul', 'gender': 'Female'}
집합
집합은 중복되지 않는 값을 저장하는 자료형입니다.
중괄호 {}를 사용하여 집합을 생성하며, 각 요소는 콤마로 구분합니다.
fruits = {'사과', '바나나', '딸기', '수박'}
print(fruits) #{'사과', '바나나', '딸기', '수박'}
집합은 중복된 값을 허용하지 않기 때문에, 중복된 요소를 가지지 않는 유니크한 값들을 저장할 때 유용합니다.
집합에 원소를 추가하거나 제거하는 등의 연산도 가능합니다.
fruits = {'사과', '바나나', '딸기', '수박'}
fruits.add('포도') # 집합에 요소 추가
fruits.remove('사과') # 집합에서 요소 제거
print(fruits) # {'딸기', '바나나', '수박', '포도'}
Bool 자료형
Bool 자료형은 참(True)과 거짓(False)을 표현하는 자료형입니다.
is_student = True
is_adult = False
print(is_student) # True
print(is_adult) # False
2. 제어문
if문
if문은 주어진 조건이 참(True)인 경우에만 코드 블록을 실행하는 제어문입니다.
조건식은 논리 연산자를 사용하여 작성할 수 있습니다.
age = 18
if age >= 20:
print("성인입니다.")
else:
print("미성년자입니다.")
while문
while문은 주어진 조건이 참(True)인 동안 코드 블록을 반복해서 실행하는 제어문입니다. .
count = 1
while count <= 5:
print(count)
count += 1
for문
for문은 주어진 범위나 순회 가능한(iterable) 객체에 대해 코드 블록을 반복해서 실행하는 제어문입니다.
fruits = ['사과', '바나나', '딸기']
for fruit in fruits:
print(fruit)
range() 함수
- range() 함수는 연속된 정수들을 생성하는 함수입니다.
- 주어진 범위에 따라 숫자들의 시퀀스를 생성하여 for 문과 함께 사용할 수 있습니다.
- range(start, stop, step) 형식으로 사용하며, **start**는 시작 값, **stop**은 종료 값을, **step**은 증가하는 값의 크기를 나타냅니다.
- 기본적으로 **start**는 0이고, **step**은 1입니다.
# 0부터 4까지 출력
for i in range(5):
print(i)
# 출력 결과: 0 1 2 3 4
# 1부터 10까지 2씩 증가하며 출력
for i in range(1, 11, 2):
print(i)
# 출력 결과: 1 3 5 7 9
enumerate() 함수
- enumerate() 함수는 순회 가능한(iterable) 객체(리스트, 튜플, 문자열 등)를 입력으로 받아 인덱스와 해당 요소를 쌍으로 반환하는 이터레이터를 생성합니다.
- 주로 for 문과 함께 사용되며, 요소의 인덱스를 알고 싶을 때 유용합니다.
- enumerate(iterable, start=0) 형식으로 사용하며, **start**는 인덱스의 시작 값을 설정할 수 있습니다. 기본값은 0입니다.
fruits = ['사과', '바나나', '딸기']
# 인덱스와 해당 요소를 출력
for index, fruit in enumerate(fruits):
print(index, fruit)
# 출력 결과:
# 0 사과
# 1 바나나
# 2 딸기
# 인덱스의 시작 값을 1로 설정
for index, fruit in enumerate(fruits, start=1):
print(index, fruit)
# 출력 결과:
# 1 사과
# 2 바나나
# 3 딸기
enumerate() 함수를 사용하면 순회 가능한 객체의 요소를 하나씩 가져오면서 해당 요소의 인덱스도 함께 사용할 수 있습니다.