Highlights
- Introduction
- Data Types
- Collections
- Flow Control
- Functions
- Modules
- Resources
- Exceptions
- File handling
- TDD
- Reg. Exp.
- Classes
- Using classes
- Misc Libraries
- Iterators
- Generators
- Functional programming
- Comprehensions
- Operator overloading
- Decorators
- Context managers
- Data access control
- Concurrency
- Profiling
- Unit testing
Course Details
Introduction
History, uses, typing system (dynamic/strong), execution model
Data Types
Integers, real numbers, strings, …
Collections
Lists, tuples, dictionaries, sets, …
Flow Control
If, while, for, iterators
Functions
Parameters, return values, variable positional/keyword arguments, defaults
Modules
Attributes, functions, classes, namespaces
Resources
Built-in functions, standard library
Exceptions
Handling, raising, custom exceptions, safe release of resources
File handling
Reading/writing, handling text/binary
TDD
Test driven development with assert, unit testing
Reg. Exp.
Regular Expressions for searching/parsing/replacing text
Classes
Creating objects, methods, attributes, static methods
Using classes
Inheritance, polymorphism
Misc Libraries
Django, Selenium. …
Iterators
For cleaner design
Generators
For more efficient applications
Functional programming
For more compact code
Comprehensions
For concise, readable code
Operator overloading
For elegant solutions
Decorators
For Aspect Oriented Programming e.g. for tracing, authentication
Context managers
For safe release of resources
Data access control
For safer data access
Concurrency
For efficiency
Profiling
For identification of bottlenecks
Unit testing
For more reliable code
Who should attend
Feedback
4.8 out of 5 average
"Our tailored course provided a well rounded introduction and also covered some intermediate level topics that we needed to know. Clive gave us some best practice ideas and tips to take away. Fast paced but the instructor never lost any of the delegates"
Brian Leek, Data Analyst, May 2022
“JBI did a great job of customizing their syllabus to suit our business needs and also bringing our team up to speed on the current best practices. Our teams varied widely in terms of experience and the Instructor handled this particularly well - very impressive”
Brian F, Team Lead, RBS, Data Analysis Course, 20 April 2022