#
# 1)
# 리스트
#
a = [1, 2, 3]
print(a)
print(a[0], a[1], a[2])
a[0]=3
print(a)
----------------
#
# 2)
# range 함수: 리스트 생성
#
a = range(0,5) #0,1,2,3,4
for i in range(4):
print(a[i])
#
#2-1 참고
#
for i in range(3):
print(i,end=" ")
print()
for i in range(1,3):
print(i,end=" ")
print()
for i in range(1,5,2):
print(i,end=" ")
print()
for i in (5, 2, 4):
print(i,end=" ")
print()
for i in (5, "hello", 4):
print(i,end=" ")
print()
----------------
#
# 3)
# 행렬 (3행X2열)
#
c=[ [1,2], [3,4], [5,6] ]
----------------
#
# 4)
# 리스트 항목 반복문 이용 출력
#
a=[1,2,3]
print(a)
print(a[0], a[1], a[2])
for i in range(3):
print(a[i], end=" ")
print()
#
# 리스트 항목의 갯수 알아내기
#
print(len(a))
#
# 반복문 이용하여 출력
#
for i in range(len(a)):
print(a[i], end=" ")
print()
----------------
#
# 5)
# ( ) 와 [ ]의 차이점
#
a=(1,2,3)
b=[1,2,3]
# 다음과 같이 값을 넣을 수 없다. 수정할 수 없다.
# a[0]=100
# 값을 넣을 수 있다. 수정할 수 있다. (할당가능)
a = [1,2,3]
a[0]=100
print(a)
print()
----------------
#
# 6)
# 리스트에서 해당 값을 가진 위치(0부터 카운팅) 찾아내기
#
a = [1,2,3]
key=2
idx = a.index(key)
print(idx, a[idx])
print()
----------------
#
# 7)
# 리스트 "객체"에서 사용할 수 있는 함수들
#
print(a)
value = a.pop()
print(value, a)
value = a.pop()
print(value, a)
print()
a.append(5)
a.append(3)
a.append(2)
print(a)
a.insert(0, 1)
print(a)
a.sort()
print(a)
b = sorted(a) #새로운 b 생성
print(b)
a.clear()
print(a)
----------------
#
# 8)
# 별명과 복사의 차이
#
a=[1, 2]
b=a
print(a)
print(b)
print(id(a))
print(id(b))
b[0] = 10
print(a)
print(b)
a=[1, 2]
b=a.copy()
print(a)
print(b)
print(id(a))
print(id(b))
b[0] = 10
print(a)
print(b)
----------------
#
# 9)
# 딕셔너리
#
book = {
"홍길동" : "010-1234-5678",
"이순신" : "010-4235-3847",
"강감찬" : "010-9876-1234" }
print(book)
print(book["이순신"])
book["이순신"] = "010-999-9999"
print(book["이순신"])
del(book["이순신"])
print(book)
book.clear()
print(book)
print(book.keys())
print(book.values())
if "이신순" in book.keys():
print("이순신이 있어요")
for key in book.keys():
print(key)
#
# 9-2)
# 딕셔너리를 이용한 전화번호부 관리 프로그램 작성: 입력, 수정, 삭제, 검색
#
#
# 메뉴처리 코드 예시
#
def a():
print("A")
def b():
print("B")
while(True):
print()
print("----------")
print("[1] a")
print("[2] b")
print("[3] c")
print("[0] quit")
print("----------")
print("select menu: ", end='')
n = int(input())
if n==1:
a()
elif n==2:
b()
elif n==0:
break
else:
print("invalid number")
print("program terminated")
----------------
#
# 10)
# 기타
#
#
# 리스트의 내용을 다른 리스트에 복사하기
#
a=['1','2','3','4'] # 리스트
b = a.copy() # 복사 copy 함수 사용 가능
#
#
#
a=('1','2','3','4') # 튜플이라고 별도로 지칭; 값을 바꿀 수 없다.
b = a.copy() # 값을 복사할 수도 없다.
# 문자 리스트와 문자열: 비슷하지만 다르다. (다른 점은 C언어에서 설명된다)
a=('1','2','3','4')
a="1234"
#
# 이런 경우는 값을 하나씩 할당해야 한다.
#
# None
# 정해지지 않은 숫자를 의미한다
b = [None] * len(a)
print(b)
for i in range(len(a)):
b[i] = a[i]
print(b)
#
# 파이선은 다음과 같은 방법으로 더욱 편리하게 할당 가능
#
b=[a[i] for i in range(len(a))]
print(b)
#
# 다차원행렬
#
a = [[1,2,3],[3,4,5]] #2차원 행(row)렬(column)
print(a)
print(a[0])
print(a[0][0])
#
# 더욱 유용한 다차원 리스트; 다차원 배열
#
# pip install numpy
import numpy as np
a=[1,2,3]
b = np.array(a)
print(b)
a = [[1,2],[3,4],[5,6]]
b = np.array(a)
b = np.array([[1,2],[3,4],[5,6]])
print(b.shape)
rows = b.shape[0]
cols = b.shape[1]
print(rows, cols)
--------------------------------------------------------------------------------
last modified: 2018/5/14
댓글 없음:
댓글 쓰기