Backend/Python
자료구조
surge_95
2022. 1. 31. 22:55
리스트
# 위치 찾기
subway = ["유재석", "조세호", "박명수"]
print(subway.index("조세호"))
# 맨뒤에 추가
subway.append("하하")
print(subway)
# 중간에 넣기
subway.insert(1, "정형돈")
print(subway)
# 뒤에서부터 꺼냄
print(subway.pop())
print(subway)
# 같은 이름의 사람이 몇 명 있는지 확인
subway.append("유재석")
print(subway.count("유재석"))
# 정렬
num_list = [5, 2, 4, 3, 1]
num_list.sort()
print(num_list)
# 순서 뒤집기
num_list.reverse()
print(num_list)
# 모두 지우기
num_list.clear()
print(num_list)
# 다양한 자료형 함께 사용
num_list = [5, 2, 4, 3, 1]
mix_list = ["조세호", 20, True]
num_list.extend(mix_list)
print(num_list)
사전
cabinet = {3: "유재석", 100: "김태호"} # key:value
print(cabinet[3])
print(cabinet[100])
print(cabinet.get(3))
print(cabinet[5]) # Error, finish
print(cabinet.get(5)) # None, continue
print(cabinet.get(5, "사용가능")) # 사용가능
print("hi")
print(3 in cabinet) #True
print(5 in cabinet) #False
# 추가, 변경
cabinet[50] = "조세호" # 추가
print(cabinet)
cabinet[3] = "김종국" # 변경
print(cabinet)
# 삭제
del cabinet[3]
print(cabinet)
# key들만 출력
print(cabinet.keys())
# value들만 출력
print(cabinet.values())
# key,value 함께 출력
print(cabinet.items())
# 모든 값 삭제
cabinet.clear()
print(cabinet)
세트
# 세트(집합):중복안됨, 순서없음
my_set = {1, 2, 3, 4, 4}
print(my_set) #{1, 2, 3, 4}
java = {"유재석", "김태호", "양세형"}
python = set(["유재석", "박명수"])
# 교집합(java와 phton 모두 할 수 있는)
print(java & python)
print(java.intersection(python))
# 합집합(java를 할 수 있거나 phton을 할 수 있는)
print(java | python)
print(java.union(python))
# 차집합(java는 할 수 있지만 phton은 할 줄 모르는)
print(java - python)
print(java.difference(python))
# python을 할 줄 아는 사람이 늘어남
python.add("김태호")
print(python)
# java를 잊었음
java.remove("김태호")
print(java)
자료구조 변경
menu = {"커피", "우유", "주스"}
print(menu, type(menu)) #set{}
menu = list(menu)
print(menu, type(menu)) #list[]
menu = tuple(menu)
print(menu, type(menu)) #tuple()
menu = set(menu)
print(menu, type(menu)) #set{}
퀴즈 풀이(pop이용)
# 추첨프로그램 만들기
# 1명은 치킨, 3명은 커피 쿠폰
# 댓글은 20명이 작성, 아이디는 1~20
# 무작위 추첨, 중복 불가
# random 모듈의 셔플과 샘플을 활용
# shuffle(1st) , print(sample(1st,1))
from random import *
id = range(1, 21) # 1부터 20까지 숫자를 생성
id = list(id)
# sample
choose = sample(id, 4)
# shuffle
shuffle(choose)
# pop
chicken = choose.pop()
coffee = choose
print("---당첨자 발표---")
print("치킨당첨자 : " + str(chicken))
print("커피당첨자 : " + str(coffee))
print("---축하합니다---")