문자열 (인덱싱과 슬라이싱) 슬라이싱 : 자르기
s = "Hello world!"
print s[1:3]
print s[0:5]
// 결과값
el
Hello
s = 'abcd' print s[::2] print s[::-1]
// 결과값
ac
dcba
s = 'Hello World' s[0] = 'h'
// 결과값
오류
※ 문자열 자료형은 내부 내용 변경 불가능
s = 'Hello World' s = 'h' + s[1:] print s
// 결과값
hello world
리스트 : 임의의 객체를 순차적으로 저장하는 집합적 자료형
L = [1,2,3] print type(L) print print len(L) print print L[1] print L[-1] print L[1:3] print print L + L print L * 3
// 결과값
<type 'list'>
3
2
3
[2, 3]
[1, 2, 3, 1, 2, 3]
[1, 2, 3, 1, 2, 3, 1, 2, 3]
※ 인덱스에 개수가 1개이면 출력할 때 숫자로 나오지만, 인덱스 슬라이싱을 하면 리스트로 출력
Range() : range(k)는 0부터 k - 1까지의 숫자의 리스트를 반환함.
L = range(10) print L print L[::2] print L[::-1] print 4 in L
// 결과값
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9] [0, 2, 4, 6, 8] [9, 8, 7, 6, 5, 4, 3, 2, 1, 0] True
튜플 : 리스트와 유사하지만 튜플 내의 값을 변경할 수 없음
■ 튜플은 둥근 괄호() 사용
■ 수정이 불가능하므로 상수와 비슷한 속성
■ 적합한 사용 예
- months = ('January', 'February', ... , 'December')
- 각 값에 대해 인덱스가 부여됨
■ 문자열이 지닌 대부분의 연산들은 튜플도 지원
t = (1,2,3) print len(t) print print t[0] print t[-1] print t[0:2] print t[::2] print print t + t + t print t * 3 print print 3 in t
// 결과값
3
1
3
(1, 2)
(1, 3)
(1, 2, 3, 1, 2, 3, 1, 2, 3)
(1, 2, 3, 1, 2, 3, 1, 2, 3)
True
※ 문자열 연산은 가능(인덱싱, 슬라이싱, +, *, 멤버쉽 테스트)
※ 인덱스에 개수가 1개이면 출력할 때 숫자로 나오지만, 인덱스 슬라이싱을 하면 튜플로 출력
사전 : 정수형 인덱스가 아닌 키를 이용하여 값을 저장하는 자료 구조
■사전의 원소 -> key : value
■ 저장된 각 자료에 대한 순서는 의미 없음
■ 매핑(Mapping) 함수와 비슷한 역할을 함 --> x라는 key 값을 넣으면 y값 반환
■ 중괄호({ }) 사용
■ 콤마(, )를 기준으로 아이템 구분
d = {'one' : 'hana', 'two' : 'dul', 'three' : 'set'} d['four'] = 'net' print d d['one'] = 1 print d print 'one' in d
// 결과값
{'four': 'net', 'three': 'set', 'two': 'dul', 'one': 'hana'}
{'four': 'net', 'three': 'set', 'two': 'dul', 'one': 1}
True
■ 사전에 새 항목 넣기 --> 사전['key'] = 'value'
■ 사전은 순차적이지 않고, 랜덤한 순서로 존재
■ 실제로는 키에 대한 해시값으로 순차 정렬이 됨
사전의 출력값
d = {'one' : 'hana', 'two' : 'dul', 'three' : 'set', 'four' : 'net'} print d.keys() print d.values() print d.items()
// 결과값
['four', 'three', 'two', 'one'] ['net', 'set', 'dul', 'hana'] [('four', 'net'), ('three', 'set'), ('two', 'dul'), ('one', 'hana')]
■ 사전.keys() --> 키만 추출 (임의의 순서)
■ 사전.values() --> 벨류만 추출 (임의의 순서)
■ 사전.items() --> 키와 값을 튜플로 추출 (임의의 순서)
keys, values, items가 반환하고 있는 자료형 --> 리스트
'Programming > Python' 카테고리의 다른 글
[python] 보안프로그래밍3 중간고사 정리 (4) (0) | 2017.04.25 |
---|---|
[python] 보안프로그래밍3 중간고사 정리 (3) (2) | 2017.04.25 |
[python] 보안프로그래밍3 중간고사 정리 (1) (0) | 2017.04.25 |
[python] 프로그래밍 기초 중간고사 정리 (0) | 2017.04.24 |
[python] 보안프로그래밍3 중간고사 정리 (0) | 2017.04.23 |
댓글