[Python 문법 정리] 자료형

19013 단어 pythonpython

수 자료형

  1. 정수형
a = 1000
  1. 실수형
a = 198.23
a = 9.    # 9.0
a = -.4	  #-0.4

round 함수

컴퓨터는 2진수로 계산하기 때문에 실수를 정확하게 표현하지 못한다. round 함수를 사용하면 소수점 값을 비교할 수 있다.

a = 0.3 + 0.9
print(a)	# 0.8999999999999999

# 소수점 4번째 자리에서 반올림
print(round(a, 3)) # 0.9

수 자료형의 연산

a = 5
b = 3

# 나누기
print(a / b)	# 1.6666666666666667

# 나머지
print(a % b)	# 2

# 몫
print(a // b)	# 1

# 거듭제곱
print(a ** b)   # 125

리스트 자료형

배열, 테이블이라고도 부르며 c++의 STL vector와도 비슷하다.

리스트 선언 및 기본 초기화

# 빈 리스트 선언
a = []
a = list()

# 리스트 선언 및 초기화
a = [1, 2, 3, 4, 5, 6, 7]

# 크기 n으로 모든 값 0으로 리스트 선언 및 초기화
n = 11
a = [0] * n		# [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]

리스트 인덱싱과 슬라이싱

인덱싱(Indexing): 인덱스 값으로 리스트의 원소에 접근

a = [1, 2, 3, 4, 5, 6, 7]

# 첫 번째 원소
print(a[0])		# 1

# 뒤에서 첫 번째 원소
print(a[-1])	# 7

슬라이싱(Slicing): 리스트에서 연속된 원소들 사용할 때 [시작 인덱스 : 끝 인덱스 - 1]

a = [1, 2, 3, 4, 5, 6, 7]

# 두번째 원소부터 여섯번째 원소까지
print(a[1:6])	# [2, 3, 4, 5, 6]

리스트 컴프리헨션(리스트 초기화)

# 0 ~ 19 중 짝수만 
arr = [i for i in range(20) if i % 2 == 0]

# 3 ~ 10의 제곱 값
arr = [i*i for i in range(3, 11)] # [9, 16, 25, 36, 49, 64, 81, 100]

# 행 3, 열 5의 2차원 배열 초기화
arr = [[0] * 3 for _ in range(5)]
# [[0, 0, 0], [0, 0, 0], [0, 0, 0], [0, 0, 0], [0, 0, 0]]

※ 2차원 리스트를 초기화할 땐 반드시 리스트 컴프리헨션을 이용하도록 하자.

리스트 함수

  1. append(삽입할 값): 원소 하나 삽입한다. (O(1))
arr.append(2)
  1. insert(위치, 삽입할 값): 특정 위치에 원소 하나 삽입한다. (O(n))
arr.insert(2, 5)
  1. remove(삭제할 값): 이 값을 가진 원소를 하나 삭제한다. (O(n))
arr.remove(2)
  1. sort(): 정렬 (O(nlogn))
# 오름차순 정렬
arr.sort()

# 내림차순 정렬
arr.sort(reverse = True)
  1. reverse(): 리스트 내에서 순서를 반대로 뒤집는다. (O(n))
arr.reverse()
  1. count(찾을 값): 리스트에서 어떤 값을 가지는 원소의 개수를 센다. (O(n))
arr.count('2')
  1. 값 in 리스트: 어떤 값이 리스트에 있는지 확인
arr = [1, 2, 3, 4]
print(3 in arr)

문자열 자료형

문자열 초기화

s = "Good Morning"
s = 'Good Evening'

문자열 연산

# 문자열 붙이기
s = "Good"
t = "Morning"
print(s + t + '!!!') 	# GoodMorning!!!

# 문자열 곱하기
s = "Good" * 4			# GoodGoodGoodGood

# 문자열 인덱싱, 슬라이싱 = 리스트와 같음
s = "Good"
print(s[1:3])			# oo

튜플 자료형

한번 선언되면 변경할 수 없는 리스트라고 생각해도 될 듯하다.

tx = (1000, 2)
tx2 = (1, 3, 5, 7)

사전 자료형

key(키) 와 Value(값)이 쌍으로 이뤄 저장된다. 자바의 map()과 같다. 순서 X.

dx = dict()
dx['yel'] = '노랑'
dx['red'] = '빨강'
dx['blu'] = '파랑'
# {'yel': '노랑', 'red': '빨강', 'blu': '파랑'}

print('red' in dx)	# True
print('gre' in dx)	# False

사전 자료형 함수

# 키 리스트
keysArr = dx.keys()

# Value 리스트
valsArr = dx.values()

# 키에 따른 값 출력
for k in keysArr: 
	print(dx[k])

집합 자료형

중복 X, 순서 X.

집합 자료형 초기화

# 방법 1. set 함수 사용
sx = set([1, 2, 3])

# 방법 2. 
sx = {1, 2, 3}

집합 자료형 연산

# 합집합
set1 | set2

# 교집합
set1 & set2

# 차집합
set1 - set2

집합 자료형 함수

sx = {1, 3, 5}
# 새로운 원소 하나 추가
sx.add(7)	# {1, 3, 5, 7}

# 새로운 원소 여러 개 추가
sx.update([9, 11, 13])	# {1, 3, 5, 7, 9, 11, 13}

# 특정 값의 원소 삭제
sx.remove(11)	# {1, 3, 5, 7, 9, 13}

좋은 웹페이지 즐겨찾기