이번엔 파이썬 자료형에 대해 알아보려고 합니다.
파이썬에는 변경이 가능한 뮤터블 객체와 변경이 불가능한 이뮤터블 객체가 있습니다.
🥚 입력
#list 객체 수정
my_list = ['hello', 4,[2,3]]
my_list[2] = (4,5) #index 2번째 값 변경
print(my_list)
🍳 출력
['hello', 4, (4,5)]
🥚 입력
# 문자열 선언 후 hello -> heloo 변경 시도
im_var = "hello"
print(im_var[3])
im_var[3] = "o"
🍳 출력
🥚 입력
#튜플 객체 선언 후 5 -> 4 변경 시도
my_tuple=(3,5,(7,5))
print(my_tuple[1])
my_tuple[1] = 4
🍳 출력
위와 같이 이뮤터블 객체는 인덱싱 하는 것은 허용하지만, 값을 변경하려고 하면 에러가 발생합니다.
🥚 입력
ival = 1234
fval =3.141592
print(3/2)
print(3//2)
print(type(ival))
print(type(fval))
🍳 출력
1.5 #3을 2로 나눈 값
1 #3을 2로 나눈 몫
<class 'int'> #ival의 데이터 타입
<class 'float'> #fval의 데이터 타입
그렇다면 3.0 * 5
와 같이정수와 실수를 동시에 포함한 연산을 하면 어떻게 될까요?
🥚 입력
result = 3.0 * 5
print(result)
print(type(result)) #result의 데이터 타입
🍳 출력
15.0
<class 'float'>
정수와 실수를 포함한 계산을 하면 실수로 형변환 됩니다.
왜냐면 float이 int보다 세기 때문이죠
string은 문자, 단어, 숫자 등으로 구성된 문자들의 집합을 의미하고, 사용하는 방식은 4가지가 있습니다.
🥚 입력
#작은 따옴표로 둘러싸기
a = 'He said "I want her bag"'
#큰 따옴표로 둘러 싸기
b = "Hurry Up! she's back!"
## 작은 따옴표 3개로 둘러싸기
c= '''
WE can use several lines.
like this
'''
# 큰 따옴표 3개로 둘러싸기
d = """
so interesing!
isn't it?
"""
k ="321"
print(a)
print(b)
print(c)
print(d)
print(k)
🍳 출력
He said "I want her bag"
Hurry Up! she's back!
WE can use several lines.
like this
so interesing!
isn't it?
321
- 문자열이 큰 따옴표(")를 포함할 경우, 전체 문자열을 작은 따옴표로 묶어주고, 작은 따옴표를 포함하는 경우 큰 따옴표로 문자열을 묶어서 표현할 수 있습니다.
- 백슬러시(\)를 앞에 붙여줘도 표현이 가능합니다.
문자열 내부에서 일부분을 잘라내고 싶을 때 사용합니다.
🥚 입력
s = "python"
print(list(s))
print(s[:3]) # 맨 앞부터 2번 인덱스까지 출력
a = '20220904sunny'
day =a[0:8] # 0번째 부터 7번째 까지 출력
weather =a[-5:] # 뒤에서 5번째부터 끝까지 출력
k = a[-1] #맨 뒤에있는 값 출력
print(day)
print(weather)
print(k)
🍳 출력
['p', 'y', 't', 'h', 'o', 'n']
pyt
20220904
sunny
y
위와 같이 문자열을 자유 자재로 분리할 수 있고 인덱스를 음수로 설정해도 접근이 가능합니다.
(음수로 설정하면 뒤에서 시작된다.)
문자열은 + 기호로 문자열끼리 결합할 수 있습니다.
🥚 입력
a = "hello, "
b = "world"
print(a+b) # "hello, " + "world"
c = "4"
d = "5"
print(c+d) # "4" +"5"
print(int(c)+int(d)) # int로 형변환하여 더하기
🍳 출력
hello, world
45
9
이처럼 문자열을 더하여 출력할 수 있고, 숫자로 이루어진 문자열은 형변환을 통해 숫자끼리의 계산으로도 사용할 수 있다.
문자열 내부의 숫자와 다른 숫자를 이용해 계산하고자 할 때 형변환 해주는 것을 잊지 말자!
+ 추가 예정