[] 아래 실습해보기 elements = ["H", "He", "Li", "Be"]
vs code에서 살펴보기
요소 접근 (인덱싱; indexing); 0에서 부터 시작
print(elements[0]) # H
요소 변경
elements[1] = "Helium"
print(elements) #elements = ["H", "Helium", "Li", "Be"]
요소 추가 / 삭제
elements.append("B") #elements = ["H", "Helium", "Li", "Be", "B"]
elements.remove("Li") #elements = ["H", "Helium", "Be", "B"]
중복 허용
elements = ['H','He','H']
print(elements)
여러 자료형 혼합
myList=['H',203,2.3,['H','He']]
myMatrix=[[1,2,3],[4,5,6],[7,8,9]] ##중첩된 리스트
언패킹 (unpacking)
a,b,c,d=[1,3,4,5]
특징
튜플 생성 - 소괄호 () 사용
colors = ("red", "green", "blue")
# 요소 접근
print(colors[1]) # green
# 변경 불가 → 아래 코드는 오류 발생
# colors[1] = "yellow"
# 튜플 언패킹
r, g, b = colors
print(r, g, b) # red green blue
특징
실습
# 중괄호 {} 사용
s1 = {1, 2, 3}
print(s1) # {1, 2, 3}
# set() 함수 사용
s2 = set([1, 2, 2, 3])
print(s2) # {1, 2, 3} (중복 제거)
# 빈 set 생성 시는 set()만 가능
empty_set = set()
print(empty_set) # set()
s = {1, 2, 3}
# 추가
s.add(4) # {1, 2, 3, 4}
s.update([5, 6]) # {1, 2, 3, 4, 5, 6} (여러 개 추가)
# 삭제
s.remove(3) # {1, 2, 4, 5, 6} (없는 값 제거 시 오류 발생)
s.discard(10) # 없는 값 제거해도 오류 없음
s.pop() # 임의의 값 제거 후 반환 (순서 없으니 랜덤)
특징
실습
# - 딕셔너리 생성
Fe = {
"name": "iron",
"structure": 'fcc',
"density": "7.874",
"density_unit": 'g/cm^3'
}
print(Fe) # 전체 키/값 짝 출력
print(Fe.keys()) # 키들만 출력
print(Fe['name']) # 'name'키의 값
print(Fe.get('name')) # 'name'키에 해당하는 값
Fe.update(CTE=12e-6)
len built-in function중 하나 (함수에 대한 수업은 차후에 다시 진행할 예정)
a=[3,4,5,'a','b']
len(a) # 정수 5
List slicing
a=[0,1,2,3,4,5]
# format
# a[begin:end:step]; end-begin = len(a)
a[::] # == a[0:6:1] ## default
a[1::2] # == a[1:6:2]
#세륨의 동위원소는 4가지 존재한다:
# 각 동위원소의 분율은 아래와 같다.
Ce_f= [0.185, 0.251, 88.450, 11.114] #[%]
# 각 동위원소의 원자량은 아래와 같다.
Ce_w = [135.907, 137.906, 139.905, 141.909]
# 세륨의 평균 원자량은 얼마인가?
avg=(Ce_f[0]*Ce_w[0]+ Ce_f[1]*Ce_w[1]+ Ce_f[2]*Ce_w[2]+ Ce_f[3]*Ce_w[3])/(Ce_f[0]+Ce_f[1]+Ce_f[2]+Ce_f[3])
## average
print(avg)