Python access dictionary values

Python — Dictionary

Each key is separated from its value by a colon (:), the items are separated by commas, and the whole thing is enclosed in curly braces. An empty dictionary without any items is written with just two curly braces, like this: <>.

Keys are unique within a dictionary while values may not be. The values of a dictionary can be of any type, but the keys must be of an immutable data type such as strings, numbers, or tuples.

Accessing Values in Dictionary

To access dictionary elements, you can use the familiar square brackets along with the key to obtain its value. Following is a simple example −

#!/usr/bin/python dict = print "dict['Name']: ", dict['Name'] print "dict['Age']: ", dict['Age']

When the above code is executed, it produces the following result −

If we attempt to access a data item with a key, which is not part of the dictionary, we get an error as follows −

#!/usr/bin/python dict = print "dict['Alice']: ", dict['Alice']

When the above code is executed, it produces the following result −

dict['Alice']: Traceback (most recent call last): File "test.py", line 4, in print "dict['Alice']: ", dict['Alice']; KeyError: 'Alice'

Updating Dictionary

You can update a dictionary by adding a new entry or a key-value pair, modifying an existing entry, or deleting an existing entry as shown below in the simple example −

#!/usr/bin/python dict = dict['Age'] = 8; # update existing entry dict['School'] = "DPS School"; # Add new entry print "dict['Age']: ", dict['Age'] print "dict['School']: ", dict['School']

When the above code is executed, it produces the following result −

dict['Age']: 8 dict['School']: DPS School

Delete Dictionary Elements

You can either remove individual dictionary elements or clear the entire contents of a dictionary. You can also delete entire dictionary in a single operation.

To explicitly remove an entire dictionary, just use the del statement. Following is a simple example −

#!/usr/bin/python dict = del dict['Name']; # remove entry with key 'Name' dict.clear(); # remove all entries in dict del dict ; # delete entire dictionary print "dict['Age']: ", dict['Age'] print "dict['School']: ", dict['School']

This produces the following result. Note that an exception is raised because after del dict dictionary does not exist any more −

dict['Age']: Traceback (most recent call last): File "test.py", line 8, in print "dict['Age']: ", dict['Age']; TypeError: 'type' object is unsubscriptable

Note − del() method is discussed in subsequent section.

Читайте также:  Json image to html

Properties of Dictionary Keys

Dictionary values have no restrictions. They can be any arbitrary Python object, either standard objects or user-defined objects. However, same is not true for the keys.

There are two important points to remember about dictionary keys −

(a) More than one entry per key not allowed. Which means no duplicate key is allowed. When duplicate keys encountered during assignment, the last assignment wins. For example −

#!/usr/bin/python dict = print "dict['Name']: ", dict['Name']

When the above code is executed, it produces the following result −

(b) Keys must be immutable. Which means you can use strings, numbers or tuples as dictionary keys but something like [‘key’] is not allowed. Following is a simple example −

#!/usr/bin/python dict = print "dict['Name']: ", dict['Name']

When the above code is executed, it produces the following result −

Traceback (most recent call last): File "test.py", line 3, in dict = ; TypeError: unhashable type: 'list'

Built-in Dictionary Functions & Methods

Python includes the following dictionary functions −

Compares elements of both dict.

Gives the total length of the dictionary. This would be equal to the number of items in the dictionary.

Produces a printable string representation of a dictionary

Returns the type of the passed variable. If passed variable is dictionary, then it would return a dictionary type.

Python includes following dictionary methods −

Removes all elements of dictionary dict

Returns a shallow copy of dictionary dict

Create a new dictionary with keys from seq and values set to value.

For key key, returns value or default if key not in dictionary

Returns true if key in dictionary dict, false otherwise

Returns a list of dict‘s (key, value) tuple pairs

Returns list of dictionary dict’s keys

Similar to get(), but will set dictPython access dictionary values=default if key is not already in dict

Adds dictionary dict2‘s key-values pairs to dict

Returns list of dictionary dict‘s values

Источник

Python — Access Dictionary Items

You can access the items of a dictionary by referring to its key name, inside square brackets:

Example

Get the value of the «model» key:

Читайте также:  Exe программирование на html

There is also a method called get() that will give you the same result:

Example

Get the value of the «model» key:

Get Keys

The keys() method will return a list of all the keys in the dictionary.

Example

The list of the keys is a view of the dictionary, meaning that any changes done to the dictionary will be reflected in the keys list.

Example

Add a new item to the original dictionary, and see that the keys list gets updated as well:

Get Values

The values() method will return a list of all the values in the dictionary.

Example

The list of the values is a view of the dictionary, meaning that any changes done to the dictionary will be reflected in the values list.

Example

Make a change in the original dictionary, and see that the values list gets updated as well:

Example

Add a new item to the original dictionary, and see that the values list gets updated as well:

Get Items

The items() method will return each item in a dictionary, as tuples in a list.

Example

Get a list of the key:value pairs

The returned list is a view of the items of the dictionary, meaning that any changes done to the dictionary will be reflected in the items list.

Example

Make a change in the original dictionary, and see that the items list gets updated as well:

Example

Add a new item to the original dictionary, and see that the items list gets updated as well:

Check if Key Exists

To determine if a specified key is present in a dictionary use the in keyword:

Example

Check if «model» is present in the dictionary:

thisdict = <
«brand»: «Ford»,
«model»: «Mustang»,
«year»: 1964
>
if «model» in thisdict:
print(«Yes, ‘model’ is one of the keys in the thisdict dictionary»)

Unlock Full Access 50% off

COLOR PICKER

colorpicker

Join our Bootcamp!

Report Error

If you want to report an error, or if you want to make a suggestion, do not hesitate to send us an e-mail:

Thank You For Helping Us!

Your message has been sent to W3Schools.

Top Tutorials
Top References
Top Examples
Get Certified

W3Schools is optimized for learning and training. Examples might be simplified to improve reading and learning. Tutorials, references, and examples are constantly reviewed to avoid errors, but we cannot warrant full correctness of all content. While using W3Schools, you agree to have read and accepted our terms of use, cookie and privacy policy.

Источник

Getting Values from a Dictionary in Python

To access all values in a dictionary in Python, call the values() method.

Читайте также:  Php split path and filename

Or if you want to get a single value, use the square bracket [] access operator:

In case you’re unsure whether the value exists, it makes more sense to use the dict.get() method to access the values. This prevents the program from crashing if the value doesn’t exist.

This is the quick answer. But let’s take a more detailed look at accessing dictionary values in Python.

How to Get All Dictionary Values in Python

If you want to get all the values of a dictionary, use the values() method.

player_data = values = player_data.values()

This returns a dict_keys object. But you can convert it to a list using the list() function:

Now, this list contains all the values from the dictionary (the player numbers):

How to Get a Dictionary Value in Python

Two main ways to get a dictionary value by key in Python

There are two ways to access a single value of a dictionary:

1. Get a Dictionary Value with Square Brackets

Accessing a dictionary value with square brackets in Python

To get a single value from a dictionary, use the square brackets approach.

To do this, place the key whose value you are looking for inside square brackets after the dictionary:

player_data = ronaldo_number = player_data["Ronaldo"] print(ronaldo_number)

The problem with this approach is if there is no such key-value pair in the dictionary, an error is thrown and your program crashes.

For instance, let’s try to get a number of a player that does not exist:

player_data = rivaldo_number = player_data.get("Rivaldo") print(rivaldo_number)

To overcome this issue, use the get() method to get a value from a dictionary instead.

2. Python Dictionary get() Method

Accessing python dictionary values with the get method

In addition to using square brackets to access dictionary values in Python, you can use the get() method.

To do this, enter the key whose value you are searching for inside the get() method.

player_data = ronaldo_number = player_data.get("Ronaldo") print(ronaldo_number)

Now if you try to access a non-existent value from the dictionary, you get a None back. This is better as your program does not crash even the value you are looking for is not there:

player_data = rivaldo_number = player_data.get("Rivaldo") print(rivaldo_number)

Conclusion

To access a dictionary value in Python you have three options:

  1. Use the dictionary.values() method to get all the values
  2. Use the square brackets [] to get a single value (unsafely).
  3. Use the dictionary.get() method to safely get a single value from a dictionary.

Using get() is safe because it returns None if the value is not found. Using square brackets crashes your program if the value is not found.

Thanks for reading. I hope you found the values you were looking for. Happy coding!

Further Reading

Источник

Оцените статью