본문 바로가기
Programming/Python

[python] 보안프로그래밍3 중간고사 정리 (5)

by graygreat 2017. 4. 25.
728x90
반응형


리스트 메소드


>> append(), insert()

s = [1,2,3]
s.append(5)     # 리스트 맨 마지막에 정수 값 5추가
print s

s.insert(3,4)   # 3 인덱스 위치에 정수 4 추가
print s

// 결과값

[1, 2, 3, 5] [1, 2, 3, 4, 5]


>> index(), count()

s = [1,2,3,4,5]
print s.index(3)    # 값 3의 인덱스 반환

print s.count(2)    # 값 2의 개수 반환

s = [1,2,2,2,2,2,2,2,2,3,4,5]
print s.count(2)

// 결과값

2 1 8


>> reverse(), sort()
s = [1,2,-10,-7,100]
s.reverse()
print s

s.sort()
print s

// 결과값
[100, -7, -10, 2, 1]
[-10, -7, 1, 2, 100]



>> remove(), extend(), append()

s = [10,20,30,40,50]
s.remove(10)    # 자료 값 10 삭제
print s

s = [10,20,30,20,40,50]
s.remove(20)    # 자료 값이 여러 개 존재하면 첫번째 것만 삭제
print s

s.extend([60, 70])
print s     # 새로운 리스트([60,70])를 기존 리스트 s뒤에 병합

s.append([60,70])
print s     # append로 새로운 리스트를 추가하면 하나의 자료 요소로서 추가

// 결과값
[20, 30, 40, 50]
[10, 30, 20, 40, 50]
[10, 30, 20, 40, 50, 60, 70]
[10, 30, 20, 40, 50, 60, 70, [60, 70]]

※ append는 뒤의 인자를 element로 인식 --> 중첩된 리스트가 됨



■ 스택[stack] : 나중에 들어온 것부터 먼저 나감.


>> pop() 

s = [10,20,30,40,50]
s.append(60)
print s

print s.pop()

print s

// 결과값
[10, 20, 30, 40, 50, 60]
60
[10, 20, 30, 40, 50]

※ s.pop() : s 리스트의 마지막 원소를 뺌



s = [10,20,30,40,50]
s.append(60)
s.extend([70,80])
s.insert(3, 35)
print s
print s.pop()

// 결과값

[10, 20, 30, 35, 40, 50, 60, 70, 80] 80

※ 이 코드를 보면 마지막으로 삽입한 것은 인덱스 3에 35지만, 나오는 것은 80이라는 것을 알 수 있따. 결국 인덱스 순으로 나오는 것 같다. (그냥 궁금해서 코딩해봄)



s = [10,20,30,40,50]
print s.pop(0)
print s
print s.pop(1)
print s

// 결과값

10 [20, 30, 40, 50] 30 [20, 40, 50]




■ 큐[Queue] : 먼저 들어온 것 부터 먼저 나감


q = [10,20,30,40,50]
q.append(60)
print q.pop(0)

print q


// 결과값

10 [20, 30, 40, 50, 60]



cmp : 파이썬은 default로 cmp(a, b) 내장 함수를 이용하여 정렬 방식 결정.


cmp(a, b)

if a < b : return -1

if a > b : return 1

if a== b : return 0


print cmp(1,2)
print cmp(5,2)
print cmp('abc', 'abc')


// 결과값

-1 1 0
















반응형

댓글