Python Study

Python 자료형 - 1

anycoding 2021. 5. 25. 16:59
반응형

변수

변수는 값을 담는 상자이다.

 

A라는 상자가 존재 할 때 내가 원하는 형태의 값을 담을 수 있다

 

A = 5 

 

5라는 값을 A의 상자의 공간에 넣어준다고 해석할 수 있다. 

 

수학의 개념 A = 5

'A는 5다' 라는 개념과 다른 개념이다. 

 

숫자형

정수형 - 0, 1, 2, -3

a = -3	 #a에 -3을 넣는다
print(a) #값 출력
print(type(a)) #a의 자료형 타입 int(integer) 정수형을 의미

실수형 - 0.123, -4.567, 3.9e10

(컴퓨터 지수 표현 방식 e,E 어느 것을 사용해도 무방 e10 = 10^10 -e10 = 10^-10)

f = 0.123	   
print(f)	   
print(type(f)) #float => 실수자료형

 

8진수 - 0o123

 

16진수 - 0x6F

 

사칙연산

x = 3
y = 4
print(x+y)  #더하기
print(x-y)  #빼기
print(x*y)  #곱하기
print(x**y) #제곱
print(x/y)  #나누기
print(x//y) #나누기 : 몫
print(x%y)  #나머지

 

문자열

문자열은 따옴표를 이용해 표현할 수 있으며 그 방법은 4가지 이다.

'파이썬의 세계에 오신걸 환영합니다.'
"파이썬의 세계에 오신걸 환영합니다."
'''파이썬의 세계에 오신걸 환영합니다.'''
"""파이썬의 세계에 오신걸 환영합니다."""
a = "Hello Python" #문자열도 마찬가지로 변수에 담을 수 있다.
print(type(a))     #str 문자열의 자료형을 뜻하는 string의 약자 str을 쓴다.

여러개의 따옴표를 쓰는 이유는 문자열 안에 ' 과 "을 표현하기 위해서이다.

x = 'I say "I love python.".'    #따옴표 안에 따옴표
y = "I say \" I love python.\"." #백슬래시 \ 이용

이스케이프 코드

파이썬은 한줄씩 처리하기 때문에 줄 바꿈이나 탭 등 여러가지 형식으로 만들어주거나 기능이나 문자를 넣을 수 있는 코드이다.

#\n	줄을 바꿀 때 사용
#\t	간격을 줄 때 사용
#\\	문자 \를 표현할 때 사용
#\'	작은따옴표(')를 표현할 때 사용
#\"	큰따옴표(")를 표현할 때 사용
#\r	캐리지 리턴(줄 바꿈 문자, 현재 커서를 가장 앞으로 이동)
#\f	폼 피드(줄 바꿈 문자, 현재 커서를 다음 줄로 이동)
#\a	벨 소리(PC 스피커에서 '삑' 소리가 난다)
#\b	백 스페이스
#\000 널 문자

 

문자열 연산

#문자열 연결
a = "Hello"
b = " Python"
a+b #Hello Python

#문자열 곱셈
a = "Python"
a * 3 #문자열 a인 Python을 3번 반복하여 출력한다.

#문자열 길이
a = "Hello Python"
len(a) #12

 

문자열 인덱싱과 슬라이싱

인덱싱 - 하나의 값을 가리킨다

슬라이싱 - 여러개의 값을 잘라낸다.

#인덱싱
a = "Hello Python"
a[0]
# H
a[3]
#l
#문자열의 시작번호는 0번째부터 시작이다.
a[-1]
#n #거꾸로 간다

#슬라이싱
b = a[0]+a[6]
#HP
a[0:4] # => a[:4] 
#Hello
#값을 넣지않으면 끝부분까지라고 생각하면된다. a[4:] => 4번째부터 끝까지

a[0:5:2] #세번째 자리는 간격만큼 건너 출력한다.
#Hlo

 

문자열 포매팅

a = "I want %d oranges." %5 
#여러가지 자료형의 삽입이 가능하다 ex)%d - 5 => %s - five
#변수에 초기화 후 변수 삽입도 가능하다
number = 5
a = "I want %d oranges." % number
a
#I want 5 oranges

#문자열 포맷 코드
#%s	문자열
#%c	문자 1개
#%d	정수
#%f	부동소수
#%o	8진수
#%x	16진수
#%%	Literal % (문자 % 자체)

 

문자열 관련 함수

 

문자열 세기(count)

a = "Hello Python"
a.count('2')
#2 l의 개수

 

문자 위치 탐색1(find)

a = "Hello Python"
a.find('o')
#4 숫자를 0부터 세고 가장 먼저 나온 위치를 반환하기 때문에 Hello의 4번째의 o를 반환한다.
a.find('f')
#-1 존재하지 않으면 -1을 반환한다.

 

문자 위치 탐색2(index)

a = "Hello Python"
a.index('o')
#4 find와 동일하다 하지만 존재하지 않는다면 오류가 발생한다.

 

문자열 삽입(join)

",".join("Hello")
#문자열 Hello 가각 사이에 ','를 삽입한다.

 

소문자->대문자(upper)

a = "Hello Python"
a.upper()
#"hello python"

 

대문자->소문자(lower)

a = "Hello Python"
a.lower()
#"HELLO PYTHON"

 

공백 지우기(strip, rstrip, lstrip)

a = '  hello  '
a.rstrip() #오른쪽 공백 지우기 '  hello'
a.lstrip() #왼쪽 공백 지우기   'hello'
a = '  hello  '
a.strip()  #공백 지우기 'hello'

 

문자열 바꾸기(replace)

a = "Hello Python"
a.replace("Python","C++")
#"Hello C++"

 

문자열 나누기(split)

a = "Hello Python"
a.split() #()공간에 아무것도 쓰지 않으면 공백기준
#['Hello','Python']

#그 외에 기준을 두고 싶으면 '?' ?에 다른 값을 넣어주면 된다
a = "H:i" 
a.split(':')
#['H','i']

 

반응형