Course Content
Introduction to Python
Introduction to Python
2. Variables and Types in Python
How to Store Numbers in PythonPython Naming Rules for VariablesHow to Work with Variables in PythonData Types in PythonChallenge: Converting Kilometers to MilesStore Text with Strings in PythonString Indexing in PythonNegative Indexing and String Length in PythonString Slicing in PythonChallenge: Retrieving Letters from StringString Concatenation in Python
3. Conditional Statements in Python
Boolean Data Type in PythonChallenge: Working with Comparison OperatorsHow to Combine Conditions in PythonChallenge: Working with Logical OperatorsMembership Operators and Type Comparisons in PythonHow to Use if/else Expressions in PythonChallenge: Running a Grocery StoreChallenge: Creating Odd and Even Logicif/elif/else ExpressionsChallenge: Running Grocery Store ExtendedChallenge: Outputting Positive, Negative or Zero
4. Other Data Types in Python
Python ListsCommon List Methods in PythonChallenge: Updating ListNested Lists in PythonChallenge: Retrieving Information from Nested ListPython TuplesCommon Tuple Methods in PythonChallenge: Updating TupleNested Tuples in PythonChallenge: Retrieving Information from Nested TuplePython DictionariesChallenge: Completing DictionaryCommon Dictionary Methods in PythonChallenge: Updating Dictionary
6. Functions in Python
Built-in Functions in PythonChallenge: Converting HeightsHow to Create Functions in PythonsChallenge: Writing First FunctionUse of if/else Statements in Python FunctionsChallenge: Identifying Positive Values Functions Without Return in PythonChallenge: Creating Logging FunctionModifying Functions in PythonChallenge: Updating Logic of the FunctionLambda Functions in PythonChallenge: Creating Lambda Function
Modifying Functions in Python
Let's revisit the example with the country information. What happens if the name
parameter isn't found in the data?
# Data countries_dict = {'USA': (9629091, 331002651), 'Canada': (9984670, 37742154), 'Germany': (357114, 83783942), 'Brazil': (8515767, 212559417), 'India': (3166391, 1380004385)} # Defining a function def country_information(d, name): print('Country:', name) print('Area:', d[name][0], 'sq km') print('Population:', round(d[name][1]/1000000, 2), 'MM') # Testing the function country_information(countries_dict, 'USA') country_information(countries_dict, 'Ukraine')
Can we manage this problem? Absolutely, by implementing conditional statements!
# Data countries_dict = {'USA': (9629091, 331002651), 'Canada': (9984670, 37742154), 'Germany': (357114, 83783942), 'Brazil': (8515767, 212559417), 'India': (3166391, 1380004385)} # Modify our function def country_information_mod(d, name): if name not in d.keys(): print("There is no information about", name) else: print("Country:", name) print("Area:", d[name][0], 'sq km') print("Population:", round(d[name][1]/1000000, 2), 'mln') # Testing the function country_information_mod(countries_dict, "USA") country_information_mod(countries_dict, "Ukraine")
Note
d.keys()
is a method used with dictionaries that produces a list of all keys in the dictionaryd
. Here, it's utilized to verify whether thename
is present in the dictionary's keys.
As demonstrated, the error message in this updated format is more user-friendly. While there are many other potential errors and methods to handle them, they're outside the purview of this course.
Everything was clear?
Thanks for your feedback!
Section 6. Chapter 9