파이썬 문법은 C++ 과 상당히 유사합니다
특히 파이썬의 리스트와 딕셔너리는 STL 의 vector<> 와 map<> 을 상당히 많이 닮아 C++ 에 익숙하다면 익히는 데 별 어려움이 없이 적응이 가능해서 좋습니다
아래는 간단한 리스트와 딕셔너리에 대한 샘플 코드입니다
리스트는 [], 딕셔너리는 {}, 튜플은 () 로 선언한다는 것도 유의!
(자세한 설명은 생략합니다 ^^)
1. 리스트
# list 테스트
def listTest():
# 초기화
codeList = ["A003540", "A005930","A066570"]
size = len(codeList)
print("list ->", codeList)
# 추가
codeList.append("A000660")
size = len(codeList)
print("A000660 추가(append) ->", codeList)
# 삭제
del codeList[0]
size = len(codeList)
print("0 번째 아이템 삭제(del) ->", codeList)
# 맨 아이템 꺼내기
last = codeList.pop()
print("맨 마지막 아이템 꺼내기(pop) -> ", last, "결과 -->", codeList)
# insert
codeList.insert(1, "A003540")
size = len(codeList)
print("1번째에 A003540 insert(1) ->", codeList)
print("for loop #1")
# FOR LOOP 1
for code in codeList:
print(code)
print("for loop #2")
# FOR LOOP 2
for i in range((len(codeList))):
print(codeList[i])
# 초기화
codeList.clear()
print("list 초기화(clear) -> ", codeList)
# 미리 0 으로 채워진 리스트 만들기
codeList = [0 for i in range(10)]
print("list 를 0 으로 초기화 -> ", codeList)
# 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 으로 구성된 배열 만들기
codeList2 = [i for i in range(10)]
print("리스트를 i 로 초기화 -> ", codeList2)
# tuple in list
codelist3 = [("A003540", '대신증권'), ("A005930"'삼성전자'), ("000660", '하이닉스')]
print("리스트안에 튜플 넣기 -> ", codelist3)
print(codelist3[2][0])
print(codelist3[2][1])
2. 딕셔너리 - STL 의 MAP 과 거의 유사.
# dicTest
def dicTest():
# 초기화
codeDic = {"A003540": "대신증권", "A005930": "삼성전자", "A000660": "하이닉스", }
print("딕셔너리 --> ", codeDic)
# 추가
codeDic["A066570"] = "LG전자"
print("새로운 key,value 추가(key = value) -> ", codeDic)
# 검색
print("A003540" in codeDic.keys()) # True
print("A000010" in codeDic.keys()) # False
# 삭제
del codeDic["A003540"]
print("key A003540 삭제(del []) -> ", codeDic)
print("for loop : key ")
# for loop
for key in codeDic.keys():
print("key %s -> value %s" %(key, codeDic[key]))
print("for loop : key, value ")
# for loop2
for key, value in codeDic.items():
print("key %s -> value %s" %(key, value))
3. 튜플 - 수정이 불가능한 배열
# 튜플 - 리스트와 거의 동일, 단 수정이 불가
def tupleTest():
t = ("A003540", "A005930")
print(t)
for code in t:
print(code)
4. set - 순서가 없고, 중복을 허락하지 않는 배열
# set : 순서가 없고, 중복을 허용하지 않는다 (추가해도 이미 있으면 무시 됨)
def setTest():
s = set()
s.add("2 삼성전자")
s.add('1 하이닉스')
# 동일한 값은 추가 되지 않는다
s.add('2 삼성전자')
s.add('3 대신증권')
print('s:',s)
# set {}, 중복해서 넣어도 중복 제거 됨
s2 = {'삼성전자', '삼성전자', '대신증권', '하이닉스'}
print(s2)
for name in s:
print('for loop test', name)
# set 은 배열처럼 [] 를 할 수가 없다.
# 아래 코드는 에러 남
#print(s[1])
list_s = list(s)
print('list_s[1]', list_s[1])
# 초기값 추가
s2 = set(['삼성전자', '하이닉스'])
print('s2:', s2)
'개발 > 파이썬' 카테고리의 다른 글
[파이썬] 리스트/딕셔너리 정렬하기 (0) | 2017.12.11 |
---|---|
[파이썬] Creon Plus 를 이용해서 KOSPI200 종목 시세 가져오기 (0) | 2017.10.15 |
[파이썬] 안드로이드 프로젝트에서 자바 클래스 레퍼런스 카운트 구하기 (0) | 2017.10.14 |
[파이썬] 폴더 명 일괄 변경 예제 (0) | 2017.10.11 |
[파이썬] 주어진 폴더 파일/크기 비교 예제 (0) | 2017.10.11 |
파이썬 개발 환경 구축 하기 (0) | 2017.09.25 |
댓글