본문 바로가기

파이썬

파이썬 자료형(3) - 문자열&튜플&사전&집합

728x90

1. 문자열

 

1) 문자열 변수를 초기화할 때는 큰따옴표나 작음 따옴표를 이용한다.
2) 문자열 안에 큰따옴표나 작은따옴표가 포함되어야 하는 경우.
 - 전체 문자열을 큰따옴표를 구성하는 경우, 내부적으로 작은따옴표 포함.
 - 전체 문자열을 작은따옴표로 구성하는 경우, 내부적으로 큰따옴표를 포함.
 - 백슬래시(\) 사용 시, 큰따옴표나 작은 따옴표를 포함시킬 수 있다.

ex) a="Don't you know \"Python\"?" => Don't you know "Python"?

 

3) 연산

1) 덧셈(+) 이용하면 문자열이 더해져서 연결된다.
2) 정수와 곱할 경우, 그 값만큼 여러 번 더해진다.
3) 튜플과 유사하게 처리된다. 이 말은 인덱싱과 슬라이싱을 이용할 수 있다.

ex) a = "String" print(a*3) => StringStringString
ex2) a= "ABCDEF" print(a[2:4]) => CD

 

2. 튜플

리스트와 유사하지만 문법 차이가 있다.


1) 한 번 선언된 값을 변경할 수 없다.

ex) a = (1,2,3,4) a[2] = 7     => 오류 발생. 값을 변경할 수 없기에.
2) 리스트는 대괄호 이용, 튜플은 소괄호(()) 이용.
3) 튜플은 리스트에 비해 상대적으로 공간 효율적.

4) 원소의 성질이 다를 때 사용.

3. 사전

1) 키(Key)와 값(Value) 쌍을 데이터로 가지는 자료형.
2) '변경 불가능한(Immutable) 자료형'을 키로 사용할 수 있다.
3) Hash Table을 이용하므로 데이터 검색 및 수정에 있어서 O(1) 시간에 처리.

ex)
data = dict()
data['사과'] = 'Apple'
data['바나나'] ='Banana'
data['코코넛']='Coconut'

print(data)
if '사과' in data:
print("사과' 키로 가지는 데이터 존재")
-------------------------------------------------------
실행 결과
{'사과':'Apple', '바나나':'Banana','코코넛':'Coconut'}
'사과'를 키로 가지는 데이터가 존재.

4) 메소드

키 데이터만 뽑아서 리스트 활용 시, keys()
값 데이터만 뽑아서 리스트 활용 시, values()

 

ex) 각 키에 따른 값 출력

 

data = dict()

data['사과'] = 'Apple'

data['바나나'] ='Banana'
data['코코넛']='Coconut'

 

key_list = data.keys()

value_list = data.values()

 

for key in key_list:

  print(data[key])

-----------------------------------

실행 결과
Apple
Banana
Coconut

 

 

4. 집합


1) 중복을 허용 X.

ex)  a = ['H','e','l','l','o'] => {'o','H','e','l'}
2) 순서가 없다.
3) 사전 자료형과 집합 자료형은 순서가 없기에 인덱싱으로 값을 얻을 수 없다.
4) 리스트 혹은 문자열을 이용해서 초기화할 수 있다. 이때 set() 함수 이용.
ex) set([1,2,3]) =>{1,2,3}
5) 중괄호({})안에 각 원소를 콤파(,) 기준으로 구분해 삽입함으로써 초기화.


★ 주로, 값이 나왔는지 안 나왔는지 사용할 때 유용하다. 상수 시간이라 O(n)인 리스트보다, 훨씬 빠르다.
ex) a={1,2,3,4,5,6} print(3 in a) => True

2) 연산
- 집합 연산.
|(합집합), &(교집합), -(차집합) 

- 원소 추가/ 삭제
add(추가), update(여러 개 추가), remove(삭제)

 

728x90

'파이썬' 카테고리의 다른 글

파이썬 자료형(2) - 리스트  (0) 2021.04.14
파이썬 자료형(1)  (0) 2021.04.14