Python / 자료형 / 사전(dict)

사전(dict)

사전은 집합의 일종으로, 키와 값이 하나의 데이터를 만듭니다. 순서가 없고 중복된 데이터를 갖지 않아서, 중복 데이터를 만드는 +, *를 사용할 수 없지만, 키를 이용하여 인덱스기호([])를 사용할 수 있습니다.

사전 만들기

사전은 집합과 마찬가지로 중괄호로 만듭니다. 키를 앞에, 값을 뒤에 쓰고, 구분은 콜론(:)으로 합니다. 데이터의 구분은 쉼표(,)로 합니다.

>>> jb = {1:"one", 2:"two", 3:"three"}
>>> jb
{1: 'one', 2: 'two', 3: 'three'}
>>> type(jb)
<class 'dict'>

리스트, 집합, 사전은 키가 될 수 없습니다. 값은 모든 자료형이 가능합니다.

빈 사전 만들기

>>> jb = {}
>>> type(jb)
<class 'dict'>

사전의 길이 구하기

>>> jb = {1:"one", 2:"two", 3:"three"}
>>> len(jb)
3

키가 있는지 확인하기

>>> jb = {1:"one", 2:"two", 3:"three"}
>>> 1 in jb
True
>>> 5 in jb
False

키가 없는지 확인하기

>>> jb = {1:"one", 2:"two", 3:"three"}
>>> 1 not in jb
False
>>> 5 not in jb
True

아이템 추가하기

>>> jb = {1:"one", 2:"two", 3:"three"}
>>> jb[4] = "four"
>>> jb
{1: 'one', 2: 'two', 3: 'three', 4: 'four'}

아이템 수정하기

>>> jb = {1:"one", 2:"two", 3:"three"}
>>> jb[1] = "hana"
>>> jb
{1: 'hana', 2: 'two', 3: 'three'}

아이템 삭제하기

>>> jb = {1:"one", 2:"two", 3:"three"}
>>> del jb[2]
>>> jb
{1: 'one', 3: 'three'}

아이템 모두 지우기

>>> jb = {1:"one", 2:"two", 3:"three"}
>>> jb.clear()
>>> jb
{}

아이템 출력하기

.items()는 모든 아이템을, .keys()는 모든 키를, .values()는 모든 값을 반환합니다.

>>> jb = {1:"one", 2:"two", 3:"three"}
>>> jb.items()
dict_items([(1, 'one'), (2, 'two'), (3, 'three')])
>>> jb.keys()
dict_keys([1, 2, 3])
>>> jb.values()
dict_values(['one', 'two', 'three'])

사전에 사전 추가하기

.update()로 사전에 사전을 추가할 수 있습니다.

>>> jb1 = {1:"one", 2:"two", 3:"three"}
>>> jb2 = {4:"four", 5:"five", 6:"six"}
>>> jb1.update(jb2)
>>> jb1
{1: 'one', 2: 'two', 3: 'three', 4: 'four', 5: 'five', 6: 'six'}

Related Posts

Python / PIP(Python Package Index) 사용법

Python / PIP(Python Package Index) 사용법

Python Package Index Python Package Index는 파이썬 패키지들이 모여 있는 저장소입니다. 2019년 3월 4일 현재 170,603개의 프로젝트, 1,236,475개의 릴리즈가 있습니다. The Python Package Index (PyPI) is a repository of software for the Python programming language. pip 명령어로 패키지를 로컬 머신에 설치하고 삭제하고 업데이트할 수 있습니다. PIP pip는 파이썬으로 작성된 패키지 소프트웨어를 관리하는 패키지 관리 시스템입니다. ...

Python / PyCharm 설치하는 방법

Python / PyCharm 설치하는 방법

PyCharm는 Python 개발 도구 중의 하나입니다. JetBrains에서 만든 것으로, 모든 기능이 있는 프로페셔널 에디션과, 기능의 제한이 있지만 무료로 사용할 수 있는 커뮤니티 에디션이 있습니다. 아래는 OS가 Windows인 컴퓨터에 PyCharm 커뮤니티 에디션을 다운로드하고 설치하는 방법입니다. 참고로, Python이 설치되어 있지 않아도 괜찮습니다. PyCharm에서 프로젝트를 만들 때 자동으로 Python을 다운로드 합니다. PyCharm 페이지에서 를 클릭합니다. Community ...

Python / 윈도우에서 pip로 설치할 때 '액세스가 거부되었습니다.' 해결하는 방법

Python / 윈도우에서 pip로 설치할 때 '액세스가 거부되었습니다.' 해결하는 방법

윈도우에서 pip로 라이브러리를 설치할 때, 다음과 같은 에러가 나면서 설치가 되지 않을 수 있습니다. ERROR: Could not install packages due to an EnvironmentError: 액세스가 거부되었습니다: 'C:\\Program Files (x86)\\Python38-32\\Lib\\site-packages\\PIL' Consider using the `--user` option or check the permissions. 해당 폴더에 적절한 권한이 없어서 발생하는 문제로, 관리자 권한으로 CMD를 실행하면 해결됩니다.

Python / 사용자 정의 함수 만들고 호출하기

Python / 사용자 정의 함수 만들고 호출하기

함수를 정의하고 호출하는 방법을 알아봅니다. 함수 만들기 def function_name( parameter ) : # code function_name : 함수 이름입니다. 변수명을 만드는 규칙과 같은 규칙으로 만듭니다. parameter : 인수입니다. 인수가 여러 개인 경우 쉼표(,)로 구분합니다. 함수 호출하기 function_name( parameter ) 예제 Hello를 출력하는 함수를 정의합니다. def jb_say_hello() : print('Hello') 함수를 호출하면 Hello가 출력됩니다. >>> jb_say_hello() Hello 함수를 정의하는 위치 함수는 ...

Python / Package / flake8 - PEP(Python Enhance Proposal) 검증 패키지 사용법

Python / Package / flake8 - PEP(Python Enhance Proposal) 검증 패키지 사용법

Style Guide for Python Code 여러 명이 공동으로 파이썬 코딩을 할 때, 각자의 스타일이 다르면 문제가 생길 수 있습니다. 그래서 협업을 수월하게 할 수 있도록 몇 가지 규칙을 정놓았는데, 이를 PEP(Python Enhance Proposal)라고 합니다. 몇 가지 규칙을 나열해보면... Use 4 spaces per indentation level. : 들여쓰기는 4칸의 공백 Limit all lines to a ...

Python / 설치 / 윈도우에 설치하기

Python / 설치 / 윈도우에 설치하기

다운로드 및 설치 Python 다운로드 페이지에서 윈도우용 Python을 다운로드합니다. 다운로드한 파일을 실행시킵니다. Add Python 3.6 to PATH에 체크하고, 안내에 따라 설치합니다. 테스트하기 IDLE을 클릭합니다. 코드를 입력하고 결과를 확인할 수 있는 Shell이 실행됩니다. print('Hello World') 를 입력하고 엔터키를 누릅니다. Hello World가 출력되는지 확인합니다.

Python / 반복문 / while

Python / 반복문 / while

while while은 주어진 조건이 참일 동안 작업을 반복하게 하는 구문입니다. 문법 while condition: statement condition : 작업을 하기 위한 조건입니다. 참일 동안 반복 작업을 합니다. statement : 반복할 작업입니다. 예제 i가 10보다 작으면 i을 출력합니다. 작업할 때마다 i는 1씩 커지고, i가 10이 되면 while문을 빠져나옵니다. i = 1 while i < 10: print(i, ...

Python / type() / 데이터 타입(자료형) 확인하는 함수

Python / type() / 데이터 타입(자료형) 확인하는 함수

type() type()은 데이터 타입을 확인할 수 있는 함수입니다. 예제 123의 데이터 타입을 확인합니다. 결과는 정수입니다. >>> type(123) <class 'int'> 변수에 데이터를 담고, 변수 이름으로 데이터 타입을 확인할 수 있습니다. >>> jb = 123 >>> type(jb) <class 'int'> print() 함수로 결과를 출력할 수 있습니다. 쉘에서는 결과가 같지만, 실제 프로그램 실행시에는 데이터 타입이 출력됩니다. >>> jb = 123 >>> print(type(jb)) <class 'int'> 다음은 여러 가지 데이터의 ...

Python / 자료형 / 튜플(tuple)

Python / 자료형 / 튜플(tuple)

튜플(tuple) 여러 개의 자료를 하나의 변수로 관리할 때 사용합니다. 리스트(list)와 거의 같지만, 데이터를 변경할 수 없다는 차이가 있습니다. 따라서 .append() 등 값을 변경하는 메소드는 사용할 수 없고, 조회를 하는 .count(), .index() 메소드만 사용할 수 있습니다. 튜플 만들기 튜플은 괄호로 만듭니다. >>> jb = (1,2,3,4,5) >>> type(jb) <class 'tuple'> 빈 튜플은 jb = () 또는 jb = tuple() 으로 만듭니다. 튜플 출력하기 print() 함수로 ...

Python / range() / 연속된 수 또는 일정 간격의 연속된 수를 만드는 함수

Python / range() / 연속된 수 또는 일정 간격의 연속된 수를 만드는 함수

range() range() 함수는 연속된 수 또는 일정 간격의 연속된 수를 만드는 함수입니다. for 반복문에 자주 사용됩니다. 문법 range(stop) 0부터 시작하여 stop보다 하나 작은 수까지 만듭니다. range(start, stop) start부터 시작하여 stop보다 하나 작은 수까지 만듭니다. range(start, stop, step) start부터 시작하여 stop보다 하나 작은 수까지 step 간격으로 수를 만듭니다. 예제 1 0부터 3까지의 수를 만듭니다. >>> list(range(4)) 1부터 10까지의 수를 만듭니다. >>> ...