안녕하세요.
다자녀 이프로입니다.
이번에는 프로그래밍을 하기 위해 꼭 알아야 하는 자료형에 대해 얘기해 보려고 하는데요.
사실 저도 이론은 어렵고 지겹지만
어느정도는 알고 있어야 프로그래밍을 할 수 있는데요.
사실 한번만 알아두면 여기 저기서 다 통용되는 개념이니 꾹 참고 한번 같이 알아볼까요?
먼저 자료형이라는게 있는데요.
쉽게 이야기하자면 프로그래밍을 할 때 쓰이는 숫자, 문자등을 의미합니다.
프로그램을 짜려면 당연히 숫자나 문자등의 자료들이 필요하겠죠?
그렇다는건 자료형을 잘 알지 못하면 프로그램을 만들 수 없다는 것을 의미합니다.
당연히 유지보수도 할 수 없겠죠.
자 그럼 그렇게 중요한 자료형 무엇이 있는지 한번 볼까요?
ㅁ숫자형
숫자형이란 말 그대로 숫자 형태로 이루어진 자료형으로 정수, 실수, 진수(2진수,8진수,16진수)등이 포함된다.
[참고로 8진수와 16진수 앞의 O와 X는 OCT, HEX에서 따왔으니 참조]
또한 숫자하면 여러가지 계산을 떠올릴 수 있는데 아래에서 살펴보겠습니다.
1)사칙연산 (+, -, *, /)
a=9
b=3
print(a+b)
print(a-b)
print(a*b)
print(a/b)
2)x의 y제곱을 나타내는 ** 연산자
a=2
b=8
print(a**b)#결과값 256
3)나눗셈 후 나머지를 반환하는 % 연산자
a=9
b=5
print(a%b) #결과값 : 4
4)나눗셈 후 몫을 반환하는 // 연산자
a=15
b=2
print(a//b) #결과값 : 7
ㅁ문자형
C언어와의 가장 큰 차이점은 C언어에서는 문자와 문자열을 구분하는데 무슨말이냐 하면
문자(char 타입)와 문자열(string 타입)이 있는데 이를 구분해서 사용했다는 말이다.
예를들어 학점을 A,B,C,D 등으로 나누는 프로그램을 짠다고 하면 변수는 Char로 짜야합니다.
문자이기 때문에,,, 하지만 파이썬에서는 문자나 문자열을 문자열로 통일하여 사용합니다.
문자열은 기본적으로 작은 따옴표(')나 큰 따움표(")로 감싸는 형태로 표현 가능하며
어느 것을 사용해도 동일하고 어떠한 차이도 없습니다.
C언어에 비하면 아주 편하게 표현할 수 있는 것이죠.
먼저 프로그래밍계의 절대 불변의 법칙인 Hello, World!를 출력해볼게요.
출력 하는 방법도 단순한데요. Print(내용) 이런식으로만 적어주면됩니다.
한번 해볼까요?
print('Hello, World!')
print("Hello, World!")
자 이렇게 하면 결과창에 밑에 잘 출력되는거 보이시죠?
'와 "의 차이점이 없는건 이렇게 확인이 됐네요.
자 그럼 여러줄을 적을때는 어떻게 해야 할까요?
아래와 같이 하면 됩니다.
참! '랑 "는 같다고 했으니 '대신 "를 적어도 당연히 되겠죠?
print("Hello, World! \
Nice to meet you!")
print('''Hello, Mr. Lee.
Nice to meet you.
Good bye!''')
print("Hello, Mr. Lee.\nNice to meet you.\nGood bye!")
자 이렇게 하면 결과는 아래와 같이 나옵니다.
생각한대로 잘 나오니 좋네요 ㅎㅎ
사실 근데 저는 3번째 방법을 좋아하는데요.
개인차가 있으니 좋아하는 방법대로 하시는게 좋을 거 같애요.
또 이런 방법도 있어요.
문자열 합치기인데요. +는 문자열을 합쳐주고 *는 그만큼 반복해줍니다.
아래와 같이 해줬다면 결과는?
c1='Hello '
c2='world'
c3='!!!'
print(c1+c2+c3)
print(c1+c2+c3*2)
이런식으로 나오겠죠?ㅎㅎ
느낌표가 2번 반복이 된걸 확인할 수 있습니다.
또 이렇게 문자를 인덱싱할수도 있는데요.
원하는 위치에 있는 문자를 가져올 수 있습니다.
당연히 뒤에서 부터도 가능하구요.
c2='world'
c3='!!!'
c1='Hello '
print(c1[0])
print(c1[1])
print(c1[-2])
앞에서 부터 0이라 0이면 H, 1이면 e가 되는거구요.
뒤에서 부터 진행할때는 띄어쓰기를 포함해서 -1 : 공백, -2 : o가 되는 것입니다.
어렵지않죠?ㅎㅎ
이렇게 하면 슬라이싱도 가능한데요. 범위내의 값을 추출하는 기능입니다.
1부터 4까지[4는 포함하지 않음! 주의] 추출할 수 있는데요.
결과를 보면 쉽게 알 수 있습니다.
c1='Hello '
print(c1[1:4])
자주 사용하는 문자열 관련 함수로 마무리할게요.
a.len() #a문자열 길이 반환
a.count('b') #a문자열에서 'b'문자 개수 count
a.find('b') #a문자열에서 'b'의 index 반환(처음으로 나온 위치), 해당 문자가 존재하지 않는다면 -1 반환
a.index('b') #find와 유사하다. 다만 존재하지 않는 문자를 찾는다면 Error가 발생한다.
",".join('abcd') #abcd문자열 사이에 ','를 삽입한다. => 'a,b,c,d' 반환
a.upper() #a문자열을 전부 대문자로 변경한다.
a.lower() #a문자열을 전부 소문자로 변경한다.
a.lstrip() #a문자열의 왼쪽 공백을 모두 제거한다.
a.rstrip() #a문자열의 오른쪽 공백을 모두 제거한다.
a.strip() #a문자열의 양쪽 공백을 모두 제거한다.
a.replace(to, from) #a문자열의 from에 해당하는 문자열을 to문자열로 치환한다.
a.split() #a문자열을 공백(스페이스, 탭, 엔터 등)을 기준으로 나누어 준다.
a.split(':') #a문자열을 ':'을 구분자로 사용해서 나누어 준다.
'IT > Python_학습' 카테고리의 다른 글
Python_5 _ 변수 (0) | 2021.09.09 |
---|---|
Python_4 _ 자료형 [튜플] (0) | 2021.09.09 |
Python_3 _ 자료형 [리스트] (0) | 2021.09.07 |
Python_2 _ 자료형 [Bool, None] (0) | 2021.09.07 |
Python_0 _ Python 설치방법! (0) | 2021.09.07 |