COURSE OBJECTIVE:
After completing this course, you should be able to:
• Create a Python script
• Describe data types commonly used in Python coding
• Describe Python strings and their use cases
• Describe Python loops, conditionals, operators, and their purposes and use cases
• Describe Python classes, methods, functions, namespaces, and scopes
• Describe the options for Python data manipulation and storage
• Describe Python modules and packages, their uses, and their benefits
• Explain how to manipulate user input in Python
• Describe error and exception management in Python
• Describe Python code debugging methods
TARGET AUDIENCE:
Networking individuals looking to understand the fundamentals of Python programming which is essential for todays software defined networks.
COURSE PREREQUISITES:
Attendees should meet the following prerequisites:
• Familiarity with Cisco IOS®-XE software or other Cisco network device configuration and operation skills
• Basic network management knowledge
COURSE CONTENT:
Introducing Programmability and Python for Network Engineers
• Programmability
• Continued Importance of the CLI
• Need for Python
• First Python Program
Scripting with Python
• Running a Python Script
• Python Interactive Shell
• Editors and IDEs
Examining Python Data Types
• String Data Type
• Integer Data Type
• Float Data Type
• Boolean Data Type
• type() Function
• Python Variables
• List Analysis
• Tuple Data Analysis
• Data Set Types
• Python Dictionary
• Nested Data Types
• Navigating Complex Data Structures
Manipulating Strings
• String Manipulation
• String Splitting
• Modifying Strings
• String Contacenation
• Whitespace Stripping
• Formatting and Templating
• Escape Characters
• Regular Expressions
• String Methods
Describing Conditionals, Loops, and Operators
• Whitespace and PEP 8
• Conditionals
• Operators
• Example of Using Conditionals
• Loops
• Loops with Lists, Dicts and Ranges
Exploring Classes, Methods, Functions, Namespaces, and Scopes
• Practical Reuse of Codes
• Functions
• Code Commenting
• Namespaces and Scopes
• Classes and Methods
• Using Inheritance to Extend Functionality
• Main Construct
Exploring Data Storage Options
• Data Formats
• Readng Data from a Simple Text and CSV File
• Writing Data to a Simple Text and CSV File
• Reading Data from a JSON Text File
• Writing Data to a JSON Text File
• Data Access in a RAW or Unstructured Format
Exploring Python Modules and Packages
• Python Standard Library Modules
• Reusable code with Modules and Packages
Gathering and Validating User Input
• Obtaining User Input
• Command-Line Arguments
Analyzing Exceptions and Error Management
• Errors and Exceptions
• Managing Exceptions
• Assertions
Examining Debugging Methods
• Code Debugging Process
• Python Debugging Functions
• Debuggers
• Python Debugger
• Pdb Commands
Labs
• Execute Your First Python Program
• Use the Python Interactive Shell
• Explore Foundation Python Data Types
• Explore Complex Python Data Types
• Use Standard String Operations
• Use Basic Pattern Matching
• Reformat MAC Addresses
• Use the if-else Construct
• Use for Loops
• Use while Loops
• Create and Use Functions
• Create and Use Classes
• Use the Python main() Construct
• Traverse the File Structure
• Read Data in Comma-Separated Values (CSV) Format
• Read, Store, and Retrieve Data in XML Format
• Read, Store, and Retrieve Date in JavaScript Object Notation (JSON) Format
• Read, Store, and Retrieve Data in a Raw or Unstructured Format
• Import Modules from the Python Standard Library
• Import External Libraries
• Create a Python Module
• Prompt the User for Input
• Use Command-Line Arguments
• Manage Exceptions with the try-except Structure
• Manage Exceptions with the try-except-finally Structure
• Use Assertions
• Use Simple Debugging Methods
• Use the Python Debugger
• Code a Practical Debugging Script
FOLLOW ON COURSES: