본문 바로가기

카테고리 없음

(Day5) 22년1월18일 파이썬 공부의 자잘한 정리들- Python Dictionaries

오늘도 출근 전 코딩공부.

  • 자주 헷갈렸던 부분은 노랑색 하이라이트 처리.
  • 일단 이해하지 못한 부분은 연한 빨강색 하이라이트 처리, 이후 복습
  • 조금 더 중요할것으로 생각되는 부분은 주황생 하이라이트 처리.

List 관련 기능 목차

Python - Sort Lists

  • 아래와 같이 .sort()를 사용할 수 있고, 기본적으로는 알파벳순, 숫자크기순으로 정렬해준다.
    thislist = ["orange", "mango", "kiwi", "pineapple", "banana"]
    thislist.sort()
    print(thislist)
  • 괄호 안에 reverse를 넣어주면, 내림차순으로도 정렬가능하다.
    thislist.sort(reverse = True)
  • customized sort 전혀 이해가 안 됐다ㅋㅋ
    입력:

    def myfunc(n):
      return abs(n - 50)

    thislist = [100, 50, 65, 82, 23]
    thislist.sort(key = myfunc)
    print(thislist)

    출력:
    [50, 65, 23, 82, 100]
  • 조건과 상관 없이 reverse를 사용해 반대로 정렬하는 방법도 당연히 있다.
    thislist = ["banana", "Orange", "Kiwi", "cherry"]
    thislist.reverse()
    print(thislist) 

Python - Copy Lists

  • 단순하게 list2 = list1 을 입력해서는 list를 복사할 수 없다,list2 는 list1를 참조하는 변수가 될 뿐이다.그서 list1의 값이 바뀌면 이는 list2에도 자동으로 반영된다.
  • 참조가 아니라 복사를 하고싶다면 copy() 기능을 사용해야한다.

 

Python Dictionaries

list에서 dictionaries 로 넘어왔다. 파이썬 코딩시 자료구조 특성의 차이점을 이해하는 것이 매우 중요한 것 같다.

  • Dictionaries 핵심특징으로는 key:value 조합으로 값을 구성한다는 점이다. 
  • Dictionaries는 순서가 있으며ordered (정해놓은 순서는 바뀌지 않는다),
  • 값을 변경할 수 있지만changeable
  • 복제는할 수 없다 do not allow duplicates. (값은 key를 가진 값이 dictionaries 안에 함께 존재할 수 없다)
  • Dictionaries의 데이터타입은, dic 이라는 고유의 object로 분류된다 

 

값을 호출하는 두가지 방법
model 이라는 key가 있고, 아래 두가지 방식으로 호출하여도 두가지 같은 값이 출력된다.

  1. x = thisdict["model"]
  2. x = thisdict.get("model")

 

당연하지만 아래와 같은 방법으로 key만, 또는 value만 출력할 수도 있다.
한번에 key와 value 모두 얻기 위해서는 "items"를 입력하면 된다.

  • x = thisdict.keys()
  • x = thisdict.values()
  • x = thisdict.items()

 

Dictionaries안에 키의 존재여부 확인 방법
별거 아니지만 뭔가 보고있으면 기분이 좋아지는 코드다ㅋㅋㅋㅋㅋㅋ나는 미치고있는건가.

  • thisdict = {
      "brand": "Ford",
      "model": "Mustang",
      "year": 1964
    }

    if "model" in thisdict:
      print("Yes, 'model' in the thisdict dictionary")

 

한눈에 파악하는 배열구조

한눈에 보는 배열 구조의 특징 비교