A specialist 3 day course in Python for network engineers and system engineers who are interested in learning Python for network automation, security, and SDN.
Dates: 22 - 24 March 2017
Prerequisites: The course requires some familiarity with programming concepts.
Overview: By the end of the course, you will have all the knowledge you need to write and interact with Python code for a variety of purposes, with a particular focus on string manipulation and interacting with APIs. You will understand the elegance and power of Python and have had experience using several important modules in the Python standard library, including for regular expression matching, working with IP addresses, and interacting with log files. You will also have learned about consuming and creating web APIs and learned about some best practices in Python for testing, debugging, and maintainability.
Format: The course is a mixture of hands-on exercises and instruction from experts. Places are strictly limited to ensure there is plenty of hands-on help available for the exercises.
Day 1: Python Basics
Day 1 covers how to use Python for general programming tasks, including tips and tricks for making this easy. The syllabus is as follows:
- Why use Python? What’s possible?
- Python syntax and concepts: an introduction through examples
- Variables, values and operators
- Conditions, loops, functions
- Essential data structures: strings and lists
- Input and output of text data (including CSV files)
- String methods
Day 2: Further Python essentials
Day 2 introduces further important concepts for real-world programming in Python, including how to write code for maintainability, robustness, and efficiency. The syllabus is as follows:
- Further important data structures: dictionaries and sets
- Classes and objects
- Modules and packages
- Raising and handling exceptions
- Tour of the amazing standard library:
- Handling dates and times
- Introduction to string matching with regular expressions
- Handling IP addresses (v4 and v6)
Day 3: Real-world programming in Python
Day 3 introduces how to consume and create web APIs and the basics of creating web interfaces using Python. It also shows some “best practices” of software development using Python.
- Consuming web APIs with the requests package
- Creating web APIs with Flask
- Worked example: Creating easy web-based reporting interfaces with Flask
- Practical debugging strategies
- Unit testing with py.test
- Best practices for writing maintainable code; coding style
We also encourage you to bring your own data sets to the course where relevant.