📖 Sequence Type이란
- 순서대로 나열된 자료형
- ex) 문자열(str), 리스트(list), 튜플(tuple)
- ex) apple이라는 단어는 첫번째 글자가 a, 다섯번째 글자가 e 입니다.
하지만, 100이라는 숫자는, 숫자 그 자체 입니다. 그렇기 때문에 계산을 할 때도 숫자 그 자체를 보고 계산을 합니다. 100과 2를 더하면 102라는 결과값이 나와야지 1002라는 결과값(순서대로 나열)이 나오면 안되겠죠?
📖 숫자열
- int (정수, integer, 소수점 없는 숫자 1,2,-1,-2), float(실수, 소수점 포함)
- 실수인지 정수인지, 어떤 자료형인지는 type 함수로 확인할 수 있음
- 25.0은 소수점이 붙었기 때문에 실수(float)로 봄
- 정수랑 실수랑 연산하면 실수 형태로 나옴 ex) 0 * 2.5 = 0.0
- / 연산자를 사용하면 실수로 결과가 반환되며, // 연산자를 사용하면 정수로 결과 반환
# 변수의 자료형 확인
print(type(age)) # <class 'int'> 출력
print(type(name)) # <class 'str'> 출력
print(type(25.0)) # <class 'float'> 출력
print(type(25)) # <class 'int'> 출력
# 숫자열 변수 선언
num1 = 10
num2 = 3.14
# 숫자열 연산
sum_result = num1 + num2 # 합
diff_result = num1 - num2 # 차
product_result = num1 * num2 # 곱
division_result = num1 / num2 # 나누기
integer_division_result = num1 // num2 # 정수 나누기
remainder_result = num1 % num2 # 나머지
📖 문자열
- 작은따옴표(''), 큰따옴표("") 모두 가능함
- ex) Alice's something과 같이 문자 자체 안에 따옴표가 들어갈 수 있기 때문에 에러 방지를 위해.
# 문자열 변수 선언
name = 'Alice's something' # 오류남
name = "Alice's something" # 정상작동
- +(더하기)를 통해 문자열 여러개를 합칠 수 있음
- 특히 파일 경로 나타낼 때 유용하게 씀
# 문자열 연산
full_greeting = greeting + " My name is " + name
print(full_greeting) # "Hello, World! My name is Alice" 출력
유용한 문자열 기능
- str.lower(), str.upper(): 문자를 모두 소문자로 만들거나 대문자로 만듭니다.
- str.replace(a,b) : 문자에 있는 ‘a’문자를 ‘b’문자로 바꿉니다.
- str.split() : 특정 문자를 기준으로 문자열을 나눠 리스트로 만듭니다. 기본값은 공백
sentence = 'Time is short'
changed_sen = sentence.replace('Time','Life')
print(changed_sen)
'''
Life is short
'''
splited_sen = changed_sen.split()
print(splited_sen)
'''
['Life','is', 'short']
'''
📖 불리언 (Boolean)
- 참, 거짓을 반환
# Boolean 변수 선언
is_raining = True
is_sunny = False
# 비교 연산자를 사용하여 Boolean 값 비교
x = 10
y = 5
greater_than = x > y
print(greater_than) # True 출력
📖 NaN (결측값)
- Not a Number, 데이터에서 결측치(missing value)를 나타내는 특수한 값, 정의할 수 없는 수치 값
- 주로 수치형 데이터에서 나타남
- ex) 0으로 나누는 연산, 유효하지 않은 수학적 연산
# 0으로 나누는 연산
result = 1 / 0
print(result) # 출력: Infinity
import math
# 유효하지 않은 수학적 연산
result = math.sqrt(-1)
print(result) # 출력: nan
import pandas as pd
# NaN을 포함한 데이터프레임 생성
data = {'A': [1, 2, None],
'B': [3, None, 5]}
df = pd.DataFrame(data)
print(df)
# 출력:
# A B
# 0 1.0 3.0
# 1 2.0 NaN
# 2 NaN 5.0
📖입력문 (input)
- 사용자로부터 키보드로 입력을 받는 함수
num1 = int(input("첫 번째 숫자를 입력하세요: "))
num2 = int(input("두 번째 숫자를 입력하세요: "))
sum = num1 + num2
print("두 숫자의 합은", sum, "입니다.")
# 이 예시에서는 사용자로부터 두 개의 숫자를 입력받아 덧셈을 수행하는 프로그램입니다.
# 사용자가 숫자를 입력하면 `input()` 함수로 문자열 형태로 입력을 받습니다.
# 이후 `int()` 함수를 사용하여 문자열을 정수로 변환하고, 두 숫자를 더하여 합을 구한 후 화면에 출력합니다.
📖 가장 많이 사용하는 자료형
- 가장 많이 사용하는 자료형 : List, String, Dictionary (이 3가지는 제대로 알기)
- 각각 자료형은 특정한 문법으로 표기합니다.
- List : 대괄호 [ ]
- String : 따옴표 ' ' , " "
- Dictionary : 중괄호와 콜론 { : }
📖 List (리스트)
#방법1 list 불러오기
list([1,2,3])
#방법2 이 방법이 더 편함
[1,2,3]
유용한 list 기능
- list.append(a) : 값 a를 리스트 뒤에 추가합니다.
- list.insert(idx,a) : 값 a를 인덱스(idx)위치에 추가하고 나머지를 한칸씩 밉니다.
- list.remove(a) : 값 a를 삭제합니다
my_list = [1,2,3]
my_list.append(4)
my_list
>> [1,2,3,4]
my_list.insert(0,'가')
my_list
>> ['가', 1,2,3,4]
my_list.remove('가')
my_list
>> [1,2,3,4]
📖 Dictionary (딕셔너리)
- key - value 형태로 정의된 자료형
- key : 딕셔너리의 인덱스와 같은 개념. 따라서 인덱스로 불러오기 안되며 특정 key값으로 접근해야 함
- value : 말 그대로 key와 엮여 있는 값
my_dict = {'한국':3000, '미국':4000, '대만':3500}
print(my_dict)
>> {'한국':3000, '미국':4000, '대만':3500}
my_dict['일본']=3200
my_dict
>> {'한국':3000, '미국':4000, '대만':3500, '일본':3200}
my_dict.keys()
>> dict_keys(['한국', '미국', '대만', '일본'])
my_dict.values()
>> dict_values([3000, 4000, 3500, 3200])
📖 에러 확인하기
- 에러 구간 파악 → 정보 확인 → 구글링 → 해결
- 정보 확인
- Syntax Error: 파이썬에서 정의한 문법을 따르지 않았을때 나타납니다.
- Index Error: 적절하지 않은 인덱스로 접근했을 때 나타납니다.
- Name Error: 존재하지 않은 변수를 확인할 때 나타납니다.
- 구글링 / google docs 확인 / AI 질문
- help 내장 함수를 통해 공식 docs를 봅니다. or 점프투 파이썬 확인
- tistory, medium 같은 블로그에서 동일한 질문 확인
- stackoverflow 같은 개발 전문 사이트 참고
- 해결 / TIL 정리해서 기록으로 남기기
a = [1,2,3]
print(a[3])
'''
Index Error
'''
print(b)
'''
Name Error
'''