Python

Learn Python programming from Python developers in London and also create projects for your portfolio

Upcoming Class
06 Aug 2018
4
Day(s) course
10:00 am - 17:00 pm
950per person
807.50 (when you book any 3 courses *)
This course will take place in 3-4 Kirby Street, London, EC1N 8TS. Find on map
15 %
Discount

when you buy 3 or more courses

The discount will be automatically
applied at the checkout
Looking for a
2-12 months
training?
Choose Web Developer
Career Programme

Looking for a 2-12 months training?

Choose

Web Developer career programme

Upcoming dates

Date Day(s) Course Session Time Price
06 Aug 2018 4 Mon to Thu 10:00 - 17:00 £950 Reserve
10 Sep 2018 4 Mon to Thu 10:00 - 17:00 £950 Reserve
12 Nov 2018 4 Mon to Thu 10:00 - 17:00 £950 Reserve
14 Jan 2019 4 Mon to Thu 10:00 - 17:00 £950 Reserve
06 Aug 2018
Mon to Thu
10am - 17pm
4 day(s)
£950.00
10 Sep 2018
Mon to Thu
10am - 17pm
4 day(s)
£950.00
12 Nov 2018
Mon to Thu
10am - 17pm
4 day(s)
£950.00
14 Jan 2019
Mon to Thu
10am - 17pm
4 day(s)
£950.00

Course Outline

Python course overview

This Python course explains how to use Python to create applications. After completing this training course you would be able to use Python on your projects. Python is a general-purpose programming language and widely used in following areas:

  • Web Programming: Django, Pyramid, Bottle, Tornado, Flask. web2py
  • GUI Development: wxPython, tkInter, PyGtk, PyQt
  • Scientific and Numeric: SciPy, Pandas, IPython
  • Software Development: Buildbot, Trac, Roundup
  • System Administration: Ansible, Salt, OpenStack

Few practical Python based projects at the end of the course will ensure that you can apply Python on your projects.

This short Python course is hands-on, instructor-led and classroom based. This training can be taken as a part-time evening course or even on the weekends. A list of all upcoming public Python training course is given on training dragon website.


Who is Python training for?

This Python training is designed for Python beginners. This course is for you if you are interested in creating Python applications for yourself or for others.


Prerequisites for Python course

  • It is not necessary to have knowledge of Python before you start this Python course but you must have some practical experience of any other programming language. 
  • You should have worked with variable, loops, functions, object oriented programming, class, inheritance and polymorphism in any programming language. If you have never build application from scratch then please first consider Training Dragon’s web designIntroduction to programmingJavaScript, SQL for beginners and PHP courses.


What will I get?

  • Training from professional Python developers:

    Training Dragon consultants have been implementing professional Python solutions across a range of applications for many years. Those consultants write and teach our Python training courses, so their experience directly informs course content.

  • Real-time Practice and Projects:

    Our Python courses are designed to get you started in Python programming. We work on industry related projects in this Python course.

  • Course Material:

    Python electronic notes are included in this course.

  • Course Completion Certificate:

    After completing this training you will receive a Python programming course completion certificate.

  • Support and Careers Advice:

    After the course if you have any problems or questions regarding Python do not hesitate to contact us. Training Dragon’s trainers are expert in their fields and if you need any help with you career choice, please speak to one of our trainers.


Python Course Contents

Introduction to Python 3

  • What is Python?
  • Why Python?
  • The community
  • Running Python interactively
  • Python scripts
  • Python help
  • Anatomy of a Python script
  • Modules
  • Functions and built-ins

Fundamental Variables

  • Python is Object Oriented
  • Python variables
  • Variable names
  • Type specific methods
  • Operators and type
  • Augmented assignments
  • Python types
  • Switching types
  • Python lists introduced
  • Python tuples introduced
  • Python dictionaries introduced

Flow Control

  • Python conditionals
  • Indentation
  • What is truth?
  • Boolean and logical operators
  • Chained comparisons
  • Sequence and collection tests
  • Object types
  • A note on Exception Handling
  • While loops
  • Loop control statements
  • For loops
  • enumerate
  • Counting 'for' loops
  • Zipping through multiple lists
  • Conditional expressions
  • Unconditional flow control

String Handling

  • Python 3 strings
  • The print function
  • Cooking strings
  • String concatenation
  • "Quotes"
  • String methods
  • String tests
  • String formatting
  • Other string formatting aids
  • Slicing a string
  • String methods - split and join

Collections

  • Python types - reminder
  • Useful tuple operations
  • Python lists
  • Tuple and list slicing
  • Extended iterable unpacking
  • Adding items to a list
  • Removing items by position
  • Removing list items by content
  • Sorting
  • List methods
  • Sets
  • Exploiting sets
  • Set operators
  • Python dictionaries
  • Dictionary values
  • Removing items from a dictionary
  • Dictionary methods
  • View objects

Regular Expressions

  • Python regular expressions
  • Elementary extended RE meta-characters
  • Regular expression objects
  • Regular expression substitution
  • Regular expression split
  • Matching alternatives
  • Anchors
  • Class shortcuts
  • Flags
  • Repeat quantifiers
  • Quantifiers
  • Parentheses groups
  • Back-references
  • Global matches

Data Storage and File Handling

  • New file objects
  • Reading files into Python
  • Reading tricks
  • Filter programs - fileinput module
  • Binary mode
  • Writing to files from Python
  • Standard streams
  • More tricks
  • Random access
  • Python pickle persistence
  • Pickle protocols
  • Build some shelves
  • Compression
  • Database interface overview
  • Example - SQLite from Python

Functions

  • Python functions
  • Function parameters
  • Variadic functions
  • Assigning default values to parameters
  • Named (keyword) parameters
  • Enforcing named parameters
  • Returning objects from a function
  • Variables in functions
  • Nested functions
  • Variables in nested functions
  • Function documentation
  • Lamdba functions
  • Lambda as a sort key
  • Lambda in re.sub

Advanced Collections

  • Advanced list functions - filter
  • List comprehensions
  • Set and dictionary comprehensions
  • Lazy lists
  • Generators
  • Generator objects and next - coroutines
  • List comprehensions as generators
  • Copying collections - problem
  • Copying collections - slice solution?
  • Copying collections - deepcopy solution

Modules and Packages

  • What are modules and packages?
  • Multiple source files
  • How does Python find a module?
  • Importing a module
  • Importing names
  • Directories as packages
  • Writing a module
  • Module documentation
  • Testing a module
  • Python debugger
  • Python profiler
  • Distributing libraries - distutils

Classes and OOP

  • Classes and OOP
  • Object-Oriented terminology
  • Object-Oriented Programming
  • Using objects
  • Defining classes
  • Defining methods
  • Constructing an object
  • Special methods
  • Operator overload special methods
  • Properties
  • Properties and decorators
  • Class methods
  • Inheritance
  • Inheritance terminology

Error Handling and Exceptions

  • Writing to stderr
  • Controlling warnings
  • Exception handling
  • Exception syntax
  • Multiple exceptions
  • Exception arguments
  • The finally block
  • Order of execution
  • The Python exception hierarchy
  • A common mistake
  • The raise statement
  • Raising our own Exceptions
  • assert

Multitasking

  • Family life
  • Creating a process from Python
  • Old interface examples
  • Waiting for a child
  • Using the subprocess module
  • The subprocess.Popen class
  • Running a basic process
  • Capturing the output
  • Passing data through a pipe
  • Processes and threads
  • Very basic threads in Python
  • Synchronization objects in threading
  • The trouble with threads
  • Using the multiprocessing module
  • Queue objects

The Python Standard Library

  • The Standard Library
  • Example - converting Python 2 scripts to Py3
  • Pretty Printer - a useful utility
  • Operating System interfaces - os and friends
  • System specific attributes - sys
  • Signal handling - signal
  • Converting a signal to an exception
  • Configuration files
  • The configparser module
  • The datetime module and friends
  • The platform module
  • External function interface - ctypes
  • The socket module
  • Other module

View Complete Course outline

Daily schedule

The scheme below shows what a typical day at Training Dragon looks like.

10:00 11:30 11:45 13:00 14:00 15:30 15:45
Classroom Activity
This course explains how to create web pages from scratch using different techniques, such as
Tea
Break
Classroom Activity
This course explains how to create web pages from scratch using different techniques, such as
Lunch
Break
Classroom Activity
This course explains how to create web pages from scratch using different techniques, such as
Tea
Break
Classroom Activity
This course explains how to create web pages from scratch using different techniques, such as
Video Placeholder

Looking for a
2-12 months
training?

Choose

Web Developer career programme

Our Trainers

Emiliano
Emiliano
Leads our teaching team with many years of experience in teaching web development.
Ross
Ross
Brings many years of Python and Java software development experience to classrooms.
Olu
Olu
Microsoft and Oracle certified developer with years teaching experience in Android, .NET and databases.

Frequently Asked Questions

Have a question?
We are here to answer them