About Education
The “Programming for Network Engineers (PRNE)” v2.0 course is designed to equip you with fundamental skills in Python programming. Through a combination of lectures and lab experiences in simulated network environments, you will begin to learn Python fundamentals to create useful and practical scripts for acquiring data and configuring network devices with Netmiko. By the end of this course, you should have a basic understanding of Python, including the knowledge to create, implement, and troubleshoot simple network automation scripts.
Prerequisites
Before you join this course you must have:
- Familiarity with Cisco IOS®-XE software or other Cisco network device configuration and operations skills
- Basic network management knowledge
- Cisco CCNA® certification or equivalent knowledge
The following Cisco course can help you meet these prerequisites:
- Implementing and Administering Cisco Solutions (CCNA)
Duration of Training
- Instructor-led training: 4 days, with practical laboratory work
- Training with a virtual instructor: 4 days, with web-based lectures and hands-on lab work
Who Should Participate?
This course is designed to:
- Network administrators
- Network engineers with little or no programming or Python experience
- Network administrators
- System engineers
Educational Content
- Introduction to Programmability and Python for Network Engineers
- Writing Scripts with Python
- Examining Python Data Types
- String Processing
- Explaining Conditionals, Loops, and Operators
- Examining Classes, Methods, Functions, Namespaces, and Scopes
- Exploring Data Storage Options
- Python Modules and Packages
- Collecting and Validating User Input
- Exceptions and Error Management Analysis
- Examining Debugging Methods
What You Will Gain at the End of Training
- Explain use cases and examples of network programmability.
- Acquire a complementary set of Python programming skills: primitives, data structures, control structures, comparison operators, input and output, structured programming, object-oriented programming, etc.
- Use Python to communicate with individual network devices, using examples of real-world network communications and operations.
- Use Python to communicate with multiple devices.
- Use object-oriented programming in Python to abstract network devices.
- Use databases in a network-based application to store information about the network.
- Use testing methodologies to create quality applications.
- Use software available through open source and existing libraries, such as Cisco GitHub, Cisco DevNet, general-purpose and Cisco-specific Python libraries, and NX-API.