Course
Python Programming for Developers
A 4 day introduction to Python Programming for software developers that covers basic language constructs, file I/O, OO programming, command line processing, managing processes and XML web clients. The focus is on using best practices and techniques to develop professional quality programs and scripts. Optionally this course can be customized by adding modules on Numeric Python and Plotting that are described the companion course Python Programming for Scientists.
Duration: 4 days
Who is it for: Computer Programmers who wish to learn Python
Layout: This course comprises a mix of theory, demonstrations and hands on exercises. Approximately 50% of the time is hands-on.
Objectives
- Understand Python syntax, flow control, data structures and objects
- Read and write files
- Develop scripts for use in a Linux or Windows environment
- Understand best practices for error handling, recovery and logging
- Manipulate data using simple and complex regular expressions
- Design and develop user defined classes for handling structured data
- Read data from a web server
Modules
Python Introduction
- Variables and Objects
- Console I/O
- IF statements and indentation
Python Objects
- Object notation
- String and numeric data
- WHILE loop
Functions
- Functions
- Arguments and return values
- Importing modules
Sequences
- List and Tuples
- FOR loop
- List comprehension
Exceptions
- Handling exceptions with TRY-EXCEPT statements
- Raising exceptions
- Exception safe code and the WITH statement
File Handling
- Reading and writing files
- Working with the file system
Data Collections
- Sets
- Dictionaries
Working with modules
- Organising modules
- Using PYTHONPATH
- Building Libraries
Command line processing
- Command line processing
- Command line options
- Exit codes and exit functions
Managing processes
- Using subprocess to run commands
- Reading sub command’s STDOUT and STDERR
- Writing to a sub command’s STDIN
Advanced Functions
- Variable arguments lists and named argument lists
- Function pointers
- Lambdas and generators
Classes and Data Structures
- Classes and objects
- Constructors
- Object methods and special methods
Designing Classes
- Supporting subscripts and slices
- Building an iterator class
- Working with the resource manager
Text Handling with Regular Expressions
- Basic pattern matching
- Pattern repetitions
- Capture groups
File processing
- Working with CSV files
- Working with fixed field files
Web Clients
- Reading data from a web page URL
- Parsing XML using ElementTree
Calling C Code
- Calling C functions
- Passing data between C and Python
Enquire about this course
"*" indicates required fields