개발/Python
기초/자료형
과녁스
2018. 9. 10. 13:13
문자열
연속된 작은따음표 3개(''') 또는 큰따옴표 3개(""") 이용
- 문자열에 따옴표를 나타내기 위한 조건
문자열 곱하기
- 문자열에서 "*"에 의미는 문자열에 반복을 의미
문자열 슬라이싱
- test = "Life is ..."
- test[0:4] == "Life"
- test[시작번호:끝번호]
- 시작번호<=test<끝번호
문자열에서 문자 변경하기 ('Pithon'을 'Python'으로 변경하기)
- 문자열의 요소값은 바꿀수 있는 값이 아니다.(문자열, 튜플 등의 자료형은 요소값을 변경할 수 없다)
- a='Pithon'
- a[:1]+'y'+a[2:] == 'Python'
문자열 포매팅
- 바로 대입 : "I eat %d apples" % 3
- 복수 대입 : "I ate %d apples. so I was sick for %s days" %(number, day)
- 고급 문자열 포매팅
- "I eat {0} apples".format(3)
- "I ate {0} apples. so I was sick for {1} days".format(number,day)
- 왼쪽 정렬 : "{0:<10}".format("hi") == "hi "
- 오른쪽 정렬 : "{0:>10}".format("hi") == " hi"
- 가운데 정렬 : "{0:^10}".format("hi") == " hi "
- 공백 채우기 : "{0:=^10}".format('hi") == "====hi===="
- '{'또는'}' 문자 표현 : "{{and}}".format() == "{and}" (2개 연속 사용)
리스트 자료형
리스트 연산자
- 리스트 반복하기
- a=[1,2,3]
- a*3 == [1,2,3,1,2,3,1,2,3]
- 리스트 수정하기
- a = [1, 2, 4]
- a[1:2] = ['a','b','c']
- a == [1, 'a', 'b', 'c', 4]
- a[1] = ['a','b','c']
- a == [1. ['a','b','c'], 4]
- a[1:2] = ['a','b','c']은 a[1]과 a[2]사이에 리스트를 바꾼다는 말이고 a[1] = ['a','b','c']은 a[1]의 요소를 ['a','b','c']으로 바꾼다는 말이다.
튜플 자료형
튜플
- 리스트는 [과 ]으로 둘러싸지만 튜플은 (과 )으로 둘러싼다.
- 튜플은 값을 변경할 수 없다.
- 1개의 요소만을 갖리 때는 요소 뒤에 콤마(,)를 붙여야 한다는 것과 괄호를 생략해도 무방하다는 점
- 더하기(+)와 곱하기(*) 가능하다.
- 튜플 모양
- t1 = ()
- t2 = (1,)
- t3 = (1, 2, 3)
- t4 = 1, 2, 3, 4
- t5 = (1, 2, 3, (4, 5))
딕셔너리 자료형
딕셔너리
- 대응 관계를 나타내는 자료형을 갖고 있는데 이를 연관배열 또는 해시라고 한다. (파이썬에서는 딕셔너리)
- {Key1:Value1, Key2:Value2...}
- Value에 리스트를 포함할 수 있다.
- 딕셔너리는 리스트나 튜플에 있는 인덱싱 방법을 적용할 수 없다.
- Key값을 설정해 놓으면 하나를 제외한 나머지 것들이 모두 무시된다는 점을 주의해야한다.
- Key에 리스트는 쓸 수 없다는 것이다. 하지만 튜플은 Key로 쓸수 있다. Key가 변하는 값인지 변하지 않는 값인지에 달려있다.
집합 자료형
집합
- 집합(set)은 집합에 관련된 것들을 쉽게 처리하기 위하여 만들어진 자료형이다.
- s1 = set([1,2,3])
- s1 == {1, 2, 3}
- 중복을 허용하지 않는다.
- 순서가 없다.
- 인덱싱 처리를 위해서는 리스투나 튜플로 변환한 후 해야한다.
- s1 = set([1,2,3])
- l1 = list(s1)
- 교집합, 합집합, 차집합을 구할 수 있다.
변수
파이썬에서의 변수는 객체를 가리키는 것
- a = 3 이라고 하면 3이라는 값을 가지는 정수 자료형(객체)이 자동으로 메모리에 생성
- a는 변수의 이름이며 3이라는 정수형 객체가 저장된 메모리 위치를 가리키게 된다.
- 변수 a는 객체가 저장된 메모리의 위치를 가리키는 레퍼런스라고도 할 수 있다.
- 파이썬에서 '3'은 상수가 아닌 정수형 객체이다.
- 복사시 주의가 필요하다.
- a = [1, 2, 3]
- b = a
- a[1] = 4
- a == [1, 4, 3], b == [1, 4, 3]
- a와 b 모두 [1,2,3]을 가리키고 있기 때문
- b = a[:] 사용 또는 b = copy(a) (copy모듈 사용)