자료구조(Python)

BY Jung·2022년 1월 26일
0

자료형, 리터럴, 변수

✔️ 식별자

어떤 대상을 유일하게 구별할 수 있는 이름을 지칭

  • 캐멀 케이스 : 대문자로 시작 → 클래스
  • 스네이크 케이스 : 소문자로 시작 → 함수 (괄호 x), 변수 (괄호 o)

✔️ 리터럴(literal)과 자료형(data type)

리터럴: 'asdf'와 같이 문자열 그 자체가 값을 나타내는 것을 의미
자료형: 리터럴의 형태를 의미

✔️ 변수

데이터를 담는 공간
C 언어는 int number와 같이 사전에 변수를 선언하고 메모리 공간을 확보 후 사용한다
그러나 파이썬에서는 number=132에서 변수 number가 생성되고, 그 변수가 리터럴 132에 의해 만들어진 정수(int) 객체를 참조하는 형식이다

입출력 함수

✔️ input()

input() 함수는 항상 결과가 문자열 이다.

✔️ print()

print 함수는 호출 때마다 라인피드(line feed)가 발생한다.
이를 방지하려면 키워드 인수end=" "를 뒤에 붙여주면 된다. 예) print("hello", end=" ")

컬렉션 자료형

✔️ 문자열

  • 두 개의 문자열을 + 연산자를 써서 연결할 수 있다
  • 문자열의 각 문자들을 인덱스 연산자로 접근할 수 있다
  • 문자열에 %를 사용해 포맷된 문자열을 만들 수 있다
    • 예)msg = "취미=%s, 나이=%d, 학점=%f" % (hobby, age, score)
  • 참고할 만한 메소드
    • s.strip([chars\]) 공백이나 선택된 문자 chars를 문자열에서 제거
    • s.split([separator], [chars]) 공백이나 separator로 주어진 문자로 문자열을 분리함. 문자열의 리스트를 반환함

✔️ 리스트

  • 리스트의 메소드
    • a.append(item)
    • a.extend(b)
    • a.count(item)
    • a.index(item, [시작], [종료]) → 리스트에서 항목 item을 찾아 가장 작은 인덱스를 반환. 탐색의 시작/종료 위치 지정도 가능함.
    • a.insert(position, item)
    • a.pop(position)
    • a.remove(item)
    • a.reverse()
    • a.sort([key], [reverse]) → 항목을 정렬

✔️ 튜플

  • 리스트와 동일하지만, 크기나 값을 변경할 수 없다
  • 따라서 메모리 측면에서 효율적이다

✔️ 딕셔너리

  • map 이라는 사전에 항목 추가하기
    • map['key'] = 'value'
    • map.update({'key1' : 'value1', 'key2' : 'value2'})
  • in 연산자로 사전 검사하기
    • print('key' in map)
    • in 연산자는 리스트, 튜플에서 순차탐색을 이용하지만, 딕셔너리에서는 해싱을 참조한다

✔️ 집합(set)

  • 리스트와의 차이점
    • 원소 중복 허용 x
    • 순서가 없다
profile
Slow and steady wins the race

0개의 댓글