2025. 2. 9. 18:40ㆍLG U+ why not SW 5/python
파이썬
자료형
1. 딕셔너리
사전과 같이 각 요소의 key값과 value값이 상응하는 자료형.
{Key1: Value1, Key2: Value2, Key3: Value3, ...}
dic = {'name': 'pey', 'phone': '010-9999-1234', 'birth': '1118'}
1) 요소 추가 : 딕셔너리이름[key값] = 'value값'
: 딕셔너리이름이라는 딕셔너리 안에 key값:value값을 추가.
a = {1: 'a'}
a[3] = 'b'
a
>>> {1: 'a', 3: 'b'}
2) 요소 삭제 : del 딕셔너리이름[key값]
: 딕셔너리이름이라는 딕셔너리 안의 key값과 그에 해당하는 value값을 한쌍으로 삭제.
a = {2: 'b', 'name': 'pey', 3: [1, 2, 3]}
del a[1]
a
>>> {2: 'b', 3: [1, 2, 3]}
1-2. 딕셔너리 함수
1) key 리스트 생성 : .key()
: 딕셔너리의 key 값만 dict_keys([]) 형태로 하나의 리스트 생성.
: list(.key())로 입력 시, [key1, key2, key3, ..., n] 형태로 생성.
2) value 리스트 생성 : .values()
: 딕셔너리의 vlaue 값만 dict_values([]) 형태로 하나의 리스트 생성.
: list(.values())로 입력 시, [values1, values2, values3, ..., n] 형태로 생성.
3) key와 value 한꺼번에 리스트 생성 : .items()
: 딕셔너리의 key와 value를 한쌍의 튜플로, dict_items([]) 형태로 하나의 리스트 생성.
a = {'name': 'pey', 'phone': '010-9999-1234', 'birth': '1118'}
a.items()
dict_items([('name', 'pey'), ('phone', '010-9999-1234'), ('birth', '1118')])
4) 딕셔너리 내부 해당 key 값 유무 확인 : in
a = {'name':'pey', 'phone':'010-9999-1234', 'birth': '1118'}
'name' in a
>>> True
'email' in a
>>> False
2. 집합 : .set()
중복을 허용하지 않음.
순서가 없으므로(Unordered), 인덱싱할 수 없음.
인덱싱하기 위해 list(.set()) 혹은 tuple(.set()) 형태로 변형해주어야 함.
중복을 허용하지 않는 특징 때문에 데이터 중복을 제거하기 위한 필터로 사용 가능.
교집합, 차집합, 합집합 구할 때 용이.
s1 = set([1, 2, 3])
s1
>>> {1, 2, 3}
s2 = set("Hello")
s2
>>> {'e', 'H', 'l', 'o'}
1) 교집합, 합집합, 차집합 구하기
s1 = set([1, 2, 3, 4, 5, 6])
s2 = set([4, 5, 6, 7, 8, 9])
1-1) 교집합 : & / .intersection()
s1 & s2
>>> {4, 5, 6}
s1.intersection(s2)
>>> {4, 5, 6}
1-2) 합집합 : | / .union()
s1 | s2
>>> {1, 2, 3, 4, 5, 6, 7, 8, 9}
s1.union(s2)
>>> {1, 2, 3, 4, 5, 6, 7, 8, 9}
1-3) 차집합 : - / .difference()
s1 - s2
>>> {1, 2, 3}
s2 - s1
>>> {8, 9, 7}
s1.difference(s2)
>>> {1, 2, 3}
s2.difference(s1)
>>> {8, 9, 7}
2-2. 집합 함수
1) 1개의 값 추가 : .add()
: 중복된 값은 오류
s1 = set([1, 2, 3])
s1.add(4)
s1
>>> {1, 2, 3, 4}
2) 2개 이상의 값 추가 : .update()
: 중복된 값은 고유한 값만 남김
s1 = set([1, 2, 3])
s1.update([4, 5, 6])
s1
>>> {1, 2, 3, 4, 5, 6}
3) 특정 값 제거 : .remove()
s1 = set([1, 2, 3])
s1.remove(2)
s1
>>> {1, 3}
3. 불
참True과 거짓False을 나타내는 자료형.
a = True
b = False
type(a)
>>> <class 'bool'>
type(b)
>>> <class 'bool'>
1) 불 연산 : bool()
: 일반적으로 값이 있다면 True, 없다면 False
bool('python')
>>> True
bool('')
>>> False
bool([1, 2, 3])
>>> True
bool([])
>>> False
bool(0)
>>> False
bool(3)
>>> True
4. 변수 : 변수_이름 = 변수에_저장할_값
a = 1
b = "python"
c = [1, 2, 3]
1) 변수의 리스트 복사
a = [1, 2, 3]
b = a
: b는 a와 같은 주소를 사용 즉, 값이 동일하다는 의미.
a[1] = 4
a
>>> [1, 4, 3]
b
>>> [1, 4, 3]
1-1) [:] 로 복사
a = [1, 2, 3]
b = a[:]
a[1] = 4
a
>>> [1, 4, 3]
b
>>> [1, 2, 3]
: a 전체를 리스트로 복사해 b라는 독립적인 리스트 생성 즉, 주소가 동일하지 않음.
1-2) .copy() 함수로 복사
a = [1, 2, 3]
b = a.copy()
b is a
>>> False
b == a
>>> False
2) 변수 만들기
2-1) 튜플을 이용해 만들기
a, b = 'python', 'life'
>>> a = 'python'
>>> b = 'life'
a, b = ('python', 'life')
>>> a = 'python'
>>> b = 'life'
(a, b) = 'python', 'life'
>>> a = 'python'
>>> b = 'life'
2-2) 리스트를 이용해 만들기
[a, b] = ['python', 'life']
>>> a = 'python'
>>> b = 'life'
2-3) 기타 변수 대입
a = b = 'python'
>>> a = 'python'
>>> b = 'python'
a = 3
b = 5
a
>>> 5
b
>>> 3
a, b = b, a
a
>>> 5
b
>>> 3
'LG U+ why not SW 5 > python' 카테고리의 다른 글
파이썬 데이터 분석 _ 라이브러리 모음 (0) | 2025.03.02 |
---|---|
파이썬 기본 _ 입출력 : 함수, 입출력, 파일읽기쓰기 (0) | 2025.02.10 |
파이썬 기본 _ 제어문 : if문, while문, for문 (0) | 2025.02.09 |
파이썬 기본 _ 자료형 : 리스트, 튜플 (0) | 2025.02.09 |
파이썬 기본 _ 숫자형, 문자열 (0) | 2025.02.08 |