0% found this document useful (0 votes)
32 views17 pages

Dictionaries

Dictionaries in Python are used to store data in key-value pairs. They allow accessing values via their associated keys rather than their position in memory like lists or tuples. A dictionary is defined using curly braces {} and contains a series of key:value pairs separated by commas. Values can be accessed or updated using their keys and the [] operator. Keys must be immutable but can be numbers, strings, or tuples. Dictionaries have methods like get() to access values safely and pop() to remove items.

Uploaded by

almulla7x
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
32 views17 pages

Dictionaries

Dictionaries in Python are used to store data in key-value pairs. They allow accessing values via their associated keys rather than their position in memory like lists or tuples. A dictionary is defined using curly braces {} and contains a series of key:value pairs separated by commas. Values can be accessed or updated using their keys and the [] operator. Keys must be immutable but can be numbers, strings, or tuples. Dictionaries have methods like get() to access values safely and pop() to remove items.

Uploaded by

almulla7x
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 17

Dictionaries

• A dictionary organizes information by association, not position


• Example: When you use a dictionary to look up the definition of “mammal,”
you don’t start at page 1; instead, you turn to the words beginning with “M”
• Data structures organized by association are also called tables or
association lists
• In Python, a dictionary associates a set of keys with data values

Fundamentals of Python: First


1
Programs
Dictionary Literals
• A Python dictionary is written as a sequence of key/value
pairs separated by commas
• Pairs are sometimes called entries
• Enclosed in curly braces ({ and })
• A colon (:) separates a key and its value
• Examples:
a = {'Sarah':'476-3321', 'Nathan':'351-7743'} A Phone book
b ={'Name':'Molly', 'Age':18} Personal information
C = {} An empty dictionary

• Keys can be data of any immutable types, including other


data structures
Fundamentals of Python: First
2
Programs
Adding Keys and Replacing Values
• Add a new key/value pair to a dictionary using []:

• Example:

• Use [] also to replace a value at an existing key:

Fundamentals of Python: First


3
Programs
Accessing Values
• Use [] to obtain the value associated with a key
• If key is not present in dictionary, an error is raised

• If the existence of a key is uncertain, test for it using


the dictionary method get

Fundamentals of Python: First


4
Programs
Removing Keys
• To delete an entry from a dictionary, remove its key
using the method pop
• pop expects a key and an optional default value as
arguments

Fundamentals of Python: First


5
Programs
Traversing a Dictionary

• To print all of the keys and their values:


(keys are returned in no particular order)

• Alternative: Use the dictionary method items()

Fundamentals of Python: First


6
Programs
Traversing a Dictionary

Entries are represented as tuples within the list

• You can sort the list first:

Fundamentals of Python: First


7
Programs
Traversing a Dictionary (continued)

Fundamentals of Python: First


8
Programs
Example: Finding the Mode of a List of Values
• The mode of a list of values is the value that occurs most frequently
• The following script inputs a list of words from a text file and prints
their mode

Fundamentals of Python: First


9
Programs
Example: Finding the Mode of a List of Values
(continued)

Fundamentals of Python: First


10
Programs
Case Study: Nondirective Psychotherapy
(Request)
• Doctor in this kind of therapy responds to patient’s
statements by rephrasing them or indirectly asking
for more information
• Request:
• Write a program that emulates a nondirective
psychotherapist

Fundamentals of Python: First


11
Programs
Case Study: Nondirective Psychotherapy
(Analysis)

Fundamentals of Python: First


12
Programs
Case Study: Nondirective Psychotherapy
(Analysis) (continued)
• When user enters a statement, program responds in one of two ways:
• With a randomly chosen hedge, such as “Please tell me more”
• By changing some key words in user’s input string and appending string to a
randomly chosen qualifier
• Thus, to “My teacher always plays favorites,” program might reply, “Why do you say that
your teacher always plays favorites?”

Fundamentals of Python: First


13
Programs
Case Study: Nondirective Psychotherapy
(Design)
• Program consists of a set of collaborating functions that share a
common data pool
• Pseudocode:
output a greeting to the patient
while True
prompt for and input a string from the patient
if the string equals “Quit”
output a sign-off message to the patient
break
call another function to obtain a reply to this string
output the reply to the patient
Fundamentals of Python: First
14
Programs
Case Study: Nondirective Psychotherapy
(Implementation)

Fundamentals of Python: First


15
Programs
Case Study: (Implementation, cont.)

Fundamentals of Python: First


16
Programs
Summary (continued)
• A dictionary associates a set of keys with values
• [] is used to add a new key/value pair to a dictionary or to
replace a value associated with an existing key
• dict type includes methods to access and remove data in
a dictionary
• Testing can be bottom-up, top-down, or you can use a
mix of both

Fundamentals of Python: First


17
Programs

You might also like