사전은 리스트와 비슷한 자료형이다. 사전과 리스트의 차이점이라면, 리스트는 순서가 있는 객체의 집합이라면 사전은 순서가 없는 객체집합이다. 사전은 순서가 없기 때문에 오프셋(또는 인덱스)로 데이터를 저장,검색 하지만 사전은 키(key)를 이용해 데이터를 저장하고,검색한다.
리스트 리스트는 문자,숫자, 리스트 자체, 뒤에서 설명할 사전,튜플 까지 담을수 있다. 구조는 자료구조를 공부할때 했던 그!! 리스트를 생각하면 된다.(하지만 보다 쉽고 편하다) 뿐만 아니라 큐와 스텍까지도 구현이 가능하다. 리스트에 대한 상세한 자료는 공식문서를 보도록 하자 리스트 붙이기, 추가하기, 정렬, 지우기 등에 대한 설명이 자세하기 있다.
리스트를 생성했다.! 쉽다. 하지만 리스트가 비어있으니 뭔가를 좀 넣어보자
좀 부족한것 같으니 더 넣어보자
index 1 자리에 9를 끼워 넣었다
그래도 자료가 적은것 같다 python은 리스트 또한 연산이 가능하다 5배로 데이터를 늘려보자
이제 데이터가 많아졌다. 뒤죽박죽 순서의 숫자들을 정렬하기 위해 sort를 이용해 정렬을해보자
깔끔하다.
리스트를 배열로 보고 2차원, 3차원 리스트를 만들어보자 python에서 배열을 리스트라 생각하자
영락없는 2차원 배열이다. 아니 2차원 리스트이다. 이 2차원 리스트 또한 append, sort와 같은 연산을 할수 있으니 직접 실습해보기 바란다.
1. 수치형 - 파이썬은 C언어처럼 정수와 실수 및 연산자를 지원하며 16진수나 8진수를 표현할 수 있다. 다른점이 있다면 복소수를 지원하며 -파이썬 1.4부터 지원했다, 요즘은 대부분 2.4 버전 이상을 사용하므로 거의 모든 시스템에서 지원한다고 생각해도 된다. 아직까지 버전 1대를 사용하는 시스템이라면 시스템관리자가 게으른것 또는 변화에 적응하지 못한 레거시 시스템일것이다- 메모리가 허용하는한 무제한의 유효자리를 갖는 long형 정수도 있다.
2. 연산자 - +, -, *, /, %, <<, & 등이 있다. C언어나 다른 언어를 알고 있다면 사용법은 이미 알고 있는것이다, 자세한 사항은 연산자의 종류의 마지막을 부분을 보기 바라며,C언어와python의 자료형 비교는 해당 링크를 참조하기 바란다. 연산자를 사용할때는 괄호를 잘 이용해야 혼란을 줄일수 있다, 복합 산술식을 이용한 계산시 괄호를 이용하면, 가독성이 증가되니 반드시 사용하기 바란다.
몇가지 연산자를 이용해보자.
덧셈에 대한 결과이다. 쉽다. 조금 더 복잡한 계산을 해보자.
너무나 쉽게 복잡한 계산이 끝났다. 이제 재미있는 비트놀이를 해보자
위의 비트 놀이가 이해 되는가? 1 은 0001이다. a를 왼쪽으로 1비트 옮기면? 0010이 되므로 2가 된다.
그럼 위의 계산은 어떻게 되겠는가? a = 5 = 0101 b = 3 = 11 <- 11칸 왼쪽이 아닌 11 = 3, 3칸 왼쪽으로 옮긴다 c = 40 = 0010 1000
이제 좀 큰 숫자를 가지고 계산을 해보자
위의 단순하지만 눈 돌아가는 숫자들을 보라.. 산수계산이 너무 쉽다.하지만 저런 경우/저런 연산은 최대한 자제 해야 한다. 세상에는 공짜가 없다. 저런 경우엔 내부적으로 확장된 유효 자리수를 계산해야 하므로 보통 정수연산보다 많이 느리다. 유효자리를 요구하는 경우를 위해 만들어진 경우이므로 자제해야 한다.