티스토리 뷰
1-1. 리스트
# 리스트 []
# 지하철 칸별로 10명, 20명, 30명
subway1 = 10
subway2 = 20
subway3 = 30
subway = [10, 20, 30]
print(subway)
subway = ["유재석", "조세호", "박명수"]
print(subway)
# 조세호가 몇 번째 칸에 있는지
print(subway.index("조세호"))
# 하하씨가 다음 정류장에서 다음 칸에 탐
subway.append("하하") # 맨 뒤에 붙음
print(subway)
# 정형돈씨를 유재석 / 조세호 사이에 태워봄
subway.insert(1, "정형돈")
print(subway)
# print(subway.pop())
# print(subway)
# print(subway.pop())
# print(subway)
# print(subway.pop())
# print(subway)
# 같은 이름의 사람이 몇 명 있는지 확인
subway.append("유재석")
print(subway)
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)
sprint(num_list)
1-2. 사전
# 사전
cabinet = {3:"유재석", 100:"김태호"} #key:value
# print(cabinet[3])
# print(cabinet[100])
# print(cabinet.get(3))
# print(cabinet[5])
# print(cabinet.get(5, "사용 가능"))
# print("hi")
print(3 in cabinet) # True
print(5 in cabinet) # False
cabinet = {"A-3":"유재석", "B-100":"김태호"}
print(cabinet["A-3"])
print(cabinet["B-100"])
# 새 손님
print(cabinet)
cabinet["A-3"] = "김종국"
cabinet["C-20"] = "조세호"
print(cabinet)
# 간 손님
del cabinet["A-3"]
print(cabinet)
# key 들만 출력
print(cabinet.keys())
# value 들만 출력
print(cabinet.values())
# key, value 쌍으로 출력
print(cabinet.items())
# 목용탕 폐점
cabinet.clear() # 모든 값을 지울 수 있음
print(cabinet)
1-3. 튜플
# 튜플 (리스트와 달리 내용 변경, 추가 불가 / 속도가 리스트보다 빠름)
menu = ("돈까스","치즈까스")
print(menu[0])
print(menu[1])
name = "김종국"
age = 20
hobby = "코딩"
print(name, age, hobby)
(name, age, hobby) = ("김종국", 20, "코딩")
print(name, age, hobby)
1-4. 집합
# 집합 (set)
# 중복 안됨, 순서 없음
# 사전에서는 key, value / 집합에서는 단순히 value
my_set = {1,2,3,3,3,}
print(my_set)
java = {"유재석","김태호","양세형"}
python = set(["유재석", "박명수"])
# 교집합 (java와 python을 모두 할 수 있는 사람)
print(java & python)
print(java.intersection(python))
# 합집합 (java 할 수 있거나 python 할 수 있는 사람)
print(java | python)
print(java.union(python))
# 차집합 (java는 할 수 있지만 python은 할 줄 모르는 개발자)
print(java - python)
print(java.difference(python))
# python 할 줄 아는 사람이 늘어남
python.add("김태호")
print(python)
# java 를 잊었어요
java.remove("김태호")
print(java)
1-4. 자료 구조의 변경
# 자료 구조의 변경
menu = {"커피", "우유", "주스"}
print(menu, type(menu))
menu = list(menu)
print(menu, type(menu))
menu = tuple(menu)
print(menu, type(menu))
menu = set(menu)
print(menu, type(menu))
1-5. Quiz
# Quiz) 당신의 학교에서는 파이썬 코딩 대회를 주최합니다.
# 참석률을 높이기 위해 댓글 이벤트를 진행하기로 했습니다.
# 댓글 작성자들 중에 추첨을 통해 1명은 치킨, 3명은 커피 쿠폰을 받게 됩니다.
# 추첨 프로그램을 작성하시오.
# 조건1: 편의상 댓글은 20명이 작성하였고 아이디는 1~20 이라고 가정
# 조건2: 댓글 내용과 상관없이 무작위로 추첨하되 중복 불가
# 조건3: random 모듈의 shuffle과 sample을 활용
# (출력 예제)
# -- 당첨자 발표 --
# 치킨 당첨자 : 1
# 커피 당첨자 : [2, 3, 4]
# -- 축하합니다 --
from random import *
# 조건1
ID = list(range(1,21))
users= list(ID)
print(ID)
# 조건2
shuffle(users)
print(users)
winners = sample(users,4)
print(winners)
print(" -- 당첨자 발표 -- ")
print("치킨 당첨자 발표 : {0}".format(winners[0]))
print("커피 당첨자 발표 : {0}".format(winners[1:]))
print(" -- 축하합니다 -- ")
'문과생이 이해하는 개발의 길 🚀 > Python' 카테고리의 다른 글
[파이썬 코딩 무료 강의 (활용편4)]: 업무자동화 (RPA) - 엑셀 자동화 (0) | 2025.02.02 |
---|---|
[파이썬 코딩 무료 강의 (기본편)]: 02. 제어문 (if, for, while) (1) | 2025.01.29 |
[파이썬 코딩 무료 강의 (기본편)]: 00. 환경설정 (0) | 2025.01.28 |