파이썬-자료구조
자료구조
리스트
리스트는 여러가지 값을 저장할 수 있다. 대괄호[]로 묶어 표현한다.
</br>
number = [10, 20, 30]
subway = ["유재석", "조세호", "하하"]
index
subway.index("조세호") = 1
append & insert
append와 insert를 통해 리스트 안에 값을 추가할 수 있다. insert는 원하는 위치를 지정하여 값을 추가할 수 있다.
subway.append("박명수") = ["유재석", "조세호", "하하", "박명수"]
subway.insert(1, "정형돈") = ["유재석", "정형돈", "조세호", "하하", "박명수"]
pop
pop 함수를 통해 뒤에서 부터 값을 제거할 수 있다.
subway = ["유재석", "조세호", "하하"]
subway.pop() = ["유재석", "조세호"]
count
리스트 안의 값의 개수를 확인 할 수 있다.
subway = ["유재석", "조세호", "하하", "유재석"]
subway.count("유재석") = 2
sort, reverse, clear
정렬, 역정렬, 모두 삭제 를 할 수 있다.
num_list = [2, 1, 3, 5, 4]
num_list.sort() = [1, 2, 3, 4, 5]
num_list.reverse() = [5, 4, 3, 2, 1]
num_list.clear() = []
리스트 확장 extend
num_list.extend(subway) = [2, 1, 3, 5, 4, "유재석", "조세호", "하하", "유재석"]
사전(dictionary)
: 키와 값으로 이루어진 자료구조 이다. 중괄호로 표현하며, {키: 값, 키: 값} 형태로 이루어진다.
cabinet = {3: "유재석", 100: "김태호"}
[], get
[키] 나 get 함수를 통해 key의 존재여부를 확인할 수 있다.
cabinet[3] = "유재석"
cabinet.get(3) = "유재석"
[키]에 존재하지 않는 키 값을 대입하면 에러를 반환하고, get함수는 none을 출력한다. 또한, none이 나오는 대신 다른 값을 지정하여 출력할 수 있다.
cabinet[4] = error
cabinet.get(4) = none
cabinet.get(4, "키 없음") = "키 없음"
‘key’ in ‘list’
in 함수를 통해 key가 있는지 확인할 수 있다.
3 in cabinet = true
5 in cabinet = false
추가, 삭제, 전체삭제
추가
cabinet["a-1"] = "김종국"
cabinet["s-2"] = "조세호"
cabinet = {3: "유재석", 100: "김태호", "a-1": "김종국", "s-2":"조세호"}
삭제
del cabinet["a-1"] = {3: "유재석", 100: "김태호", s-2":"조세호"}
전체삭제
cabinet.clear() = {}
keys() values() items()
키, 값, 쌍 을 출력할 수 있다.
cabinet = {3: "유재석", 100: "김태호"}
cabinet.key() = dict_keys([3, 100])
cabinet.values() = dict_values(["유재석", "김태호"])
cabinet.items() = dict_items([(3, "유재석"), (100, "김태호")])
튜플
tuple은 list와 다르게 값을 추가하거나 변경할 수 없다. 튜플은 소괄호()로 표시한다.
menu = ("돈가스", "치즈가스")
menu[0] = "돈가스"
menu.add("생선가스") X 불가
set(집합)
set은 순서없이 무작위로 출력되며, 중복된 값이 없다. set은 중괄호{}로 표현한다.
my_set = {1, 2, 3, 4, 4} = {1, 2, 3, 4}
java = {"유재석", "김태호"}
python = {"유재석", "양세형", "조세호"}
교집합 (intersection)
자바와 파이썬 둘 다 할 수 있는 개발자를 선택한다. & 연산자나 intersection 함수를 사용한다.
java & python
java.intersection(python)
합집합(union)
자바나 파이썬 중 하나라도 할 수 있는 개발자를 선택한다. | 연산자나 union 함수를 사용한다.
java | python
java.union(python)
차집합(difference)
자바만 할 수 있는 개발자를 선택한다.
- 연산자나 difference 함수를 사용한다.
java - python
java.difference(python)
추가, 삭제
추가
java.add("양세형")
java = {"유재석", "김태호", "양세형"}
java.remove("김태호")
java = {"유재석", "양세형"}
자료구조 변경
type() 함수를 통해 자료구조를 확인할 수 있다.
menu = {"커피", "우유"}
type(menu) = set
변경하고 싶은 자료구조로 감싸면 자료구조가 변경된다.
list(menu)
type(menu) = list
tuple(menu)
type(menu) = tuple
댓글남기기