[Python] 자료형 - 숫자형/문자열 자료형

Programming/PYTHON

[Python] 자료형 - 숫자형/문자열 자료형

tnddj1219 2020. 4. 4. 14:00
728x90

자료형이란?

자료형이란 프로그래밍을 할 때 쓰이는 숫자, 문자열 등 자료 형태로 사용하는 모든 것을 뜻합니다.

프로그램의 기본이자 핵심 단위가 바로 자료형입니다 

이런 자료형의 값을 저장하는 공간을 변수라고 합니다.

종류: 숫자형 / 문자열 자료형 / 리스트 자료형 / 튜플 자료형 / 딕셔너리 자료형 / 집합 자료형 / 불 자료형


숫자형 

숫자 형태로 이루어진 자료형을 말합니다.

정수형: 정수 [ex] a=1, a=-1, a=0
실수형: 소수점이 포함된 숫자 [ex] a=4.1
8진수: 숫자가 0o 또는 0O로 시작합니다. [ex] 0o15
16진수: 숫자가 0x로 시작합니다. [ex] 0xAB

 

연산자 종류

이런 숫자형과 연산자를 조합하여 계산을 할 수 있습니다.

연산자 종류

A=5
B=3

## 더하기
print("더하기",A+B) # 8이 출력됩니다.

## 빼기
print("빼기",A-B) # 2가 출력됩니다.

## 곱하기
print("곱하기",A*B) # 15가 출력됩니다.

## 나누기
print("나누기",A/B) # 1이 출력됩니다.

## 나누기 - 몫
print("몫",A//B) # 1.6666666666666667이 출력됩니다.

# 제곱
print("제곱",A**B) # 5*5*5=125가 출력됩니다.

위의 코드 결과 화면


문자열

문자, 단어등으로 구성된 문자열의 집합을 말합니다.

 

문자열 만드는 법

1. 큰따옴표(") 사용하기 [ex] "Hello", """Hello"""
2. 작은따옴표(') 사용하기 [ex] 'Hello','''Hello'''
3. 만약 문자열에 작은 따옴표를 넣고 싶다면 큰따옴표로 둘러싸면 됩니다. (큰 따옴표를 넣고 싶으면 반대로 작은따옴표로 둘러싸면 됩니다.)
4. 또는 백슬래시(\)를 사용하여 큰따옴표와 작은따옴표를 넣을 수 있습니다. [ex] "I'm happy", "I\'m happy"
5. 여러줄인 문자열을 만들고 싶다면 \n을 사용하거나 연속된 작은따옴표(''')나 큰따옴표(""")를 사용하면 됩니다.
6. 이스케이프 코드를 사용하여 출력물을 보기좋게 정리할 수 있습니다.

이스케이프코드

문자열 연산

문자열 더하기: 문자열이 +에 의해 합쳐집니다. [ex] "Hello "+"World!"="Hello World!"가 됩니다.
문자열 곱하기: 문자열이 *에 의해 반복됩니다. [ex] "="*5="====="가 됩니다.
문자열 길이구하기: len을 이용하면 구할 수 있습니다. [ex] len("Hello")=5가 됩니다.

A="Hello"
B="World"

##문자열 더하기 & 곱하기 & 길이 구하기
print("="*12) #"============"가 출력된다.
print(A+" "+B) #"Hello World"가 출력된다.
print("="*12)
print("문자열 길이",len(A)) #"Hello" 길이인 5 출력된다.

위의 코드 결과 화면

문자열 인덱싱 & 슬라이싱

문자열 인덱싱: 문자열의 각 문자마다 0부터 순서대로 매겨집니다.
[ex] a="Hello"라고 한다면 a[0]="H"가 됩니다.
문자열 슬라이싱: 문자열을 원하는대로 잘라서 사용할 수 있습니다.
[ex] a="Hello World!"라고 한다면 a[0:5]="Hello"가 됩니다.

A="Hello"
B="World"

##문자열 인덱싱 & 슬라이싱
print("A의 첫글자:",A[0]) #A의 첫글자 H가 출력된다.
C=A+" "+B
print("C:",C,"결과:",C[0:5]) #Hello가 출력된다.

위의 코드 결과 화면

문자열 포메팅

문자열 안에 어떤 값을 삽입하는 것을 말한다.

대입해 넣을 자료형에 맞춰 사용하면 문자열에 삽입됩니다.
또한 포맷코드를 숫자와 함께 사용하면 정렬도 가능하고, 소수점 자리수도 표현이 가능합니다.
[ex] num=3이라면 "I have %d apples" % num => "I have 3 apples"가 됩니다.

포멧코드

format 함수 사용하기
[ex] num=3이라면 "I have {0} apples".format(num)하면 됩니다.
[ex] "I have {num} apples".format(num=3) 도 사용가능합니다.

num=3

##문자열 포메팅
print("I have %d apples" % num)
print("I have {0} apples".format(num))
print("I have {num} apples".format(num=3))

위의 코드 결과 화면

문자열 관련 함수

Count: 문자열 중 문자의 개수를 셉니다.

[ex] a="Hello"라면 a.count("l")=2이다.
find: 문자열 중 문자가 처음 나온 위치를 반환한다. 문자열에 존재하지 않으면 -1을 반환합니다.

[ex] a="Hello"라면 a.find("e")=1이다.
index: 문자열 중 맨 처음으로 나온 위치를 반환한다. 문자열이 존재하지 않으면 오류가 발생합니다.
join: 문자열의 각각의 문자 사이에 문자를 삽입합니다. [ex] "-".join("abcd")를 하면 "a-b-c-d"가 됩니다.
upper/lower: 문자열을 소문자->대문자로, 대문자->소문자로 바꿀 수 있습니다.

[ex] a="hello"라면 a.upper()하면 "HELLO"가 됩니다. / a="HELLO"라면 a.lower()하면 "hello"가 됩니다.
lstrip/rstrip/strip: 왼쪽 공백 지우기,오른쪽 공백 지우기, 양쪽 공백을 지울 수 있습니다.

[ex] a=" Hello "라면 a.strip()하면 "Hello"가 됩니다.
replace: 문자열 안의 특정 값을 다른 값으로 바꿔줍니다.

[ex] a="Hello World"라면 a.replace("Hello", "HI")를 하면 "Hi World"가 됩니다.
split: 특정 문자열을 기준으로 나눠서 리스트형으로 저장하게 됩니다.

[ex] a="a-b-c-d"라면 a.split('-')하면 ['a','b','c','d']가 된다.

A="Hello"

##문자열 관련 함수
print("count 함수 결과:",A.count("l")) #l의 갯수 2가 출력된다.
print("index 함수 결과:",A.index("e")) #e의 위치 1이 출력된다.
print("find 함수 결과:",A.find("e")) #e의 위치 1이 출력된다.
print("join 함수 결과:","-".join("abcd")) #a-b-c-d가 출력된다.
print("upper 함수 결과:",A.upper()) #HELLO가 출력된다.
print("lower 함수 결과:",A.lower()) #hello가 출력된다.
print("strip 함수 결과:"," Hello ".strip()) #Hello가 출력된다.
print("replace 함수 결과:","Hello World".replace("Hello","Hi")) #Hello World -> Hi World 가 출력된다.
print("split 함수 결과:","a-b-c-d".split('-')) #['a','b','c','d']가 출력된다.

위의 코드 결과 화면

[출처] 점프 투 파이썬

728x90