The Python Programming Language
Python is a powerful object-oriented programming language that can be used in a wide variety of applications. It is distributed under an open-source licence and is available on all major operating systems.
Python is one of the family of 'P' languages widely used in web development, Python, Perl, PHP. Their acronyms, for the curious are as follows:
- PERL - Practical Extraction and Reporting Language ... sometimes referred to as a "Swiss Army Knife" of programming utilities
- PHP - PHP: Hypertext Processor ... this is an example of a recursive acronym ( its a programmer thing ... think e.g. of GNU )
- Python - actually this is not an acronym .. the story goes that Guido van Rossum the inventor of Python was a fan of "Monty Python's Flying Circus" and was after a name for his new language that was "short, unique and slightly mysterious"
Public Scheduled and On-Site Courses (delivered on customer site)
On-Site Courses (only delivered on customer site)
- Introduction to XML Document Processing with Python
- Advanced XML Document Processing with Python
- SVG Programming with Python
Examples of Python applications:
- Web Development (e.g. CGI scripts, Content Management Systems)
- Database Access
- Desktop GUIs
- Scientific and Numeric Computing
- Low Level Network Programming
- Software Development
- Games and 3D Graphics
Python was designed to be a flexible language that could support a variety of programming styles - modular, object oriented, and functional programming styles amongst others.
Python modules can be written in C and C++ as well as in Python.
Python can be used as a beginner's language, and also as a language for developing very large and complex applications and application frameworks.
Frameworks and applications developed in Python include:
The Python curriculum is made up of two core 5 day courses:-
It is then supplemented by a number of modules and Web Framework courses, which extend some of the topics covered in the Advanced course, or cover specialised aspects of Python usage e.g. in conjunction with various application specific frameworks. These modules and courses can be tailored and combined in various ways.
- Introduction to Python XML (2 days)
- Advanced Python XML and 4Suite - XML, XSLT, XPath, XMLSchema and RDF (3 days)
- Python Network Programming using the Twisted Framework (3 days)
- SVG Python Programming (2 days)
- Python for Bioinformatics (3 days)
- Python and Database Programming (MySQL, SQLite, PostgreSQL) (2 days)
- Python for Mathematics and Science - NumPy, SciPy and Mathplot (2 days)
- Multithreaded Python programming(2 days)
- Cluster programming with Python (2 days)
- Parsing, Data Munging and Regular Expressions using Python (3 days)
- Python GUI programming using Qt (3 days)
- Python GUI programming using TkInter (3 days)
- Web Services Python programming (3 day)
- Plone for Users (2 days)
- Plone and Zope for CMS Application Developers (4 days)
- TurboGears and CherryPy for Web Developers (3 days)
- Django for Web Developers (4 days)
- Python and Boost Library programming (3 days)
- Building Python modules in C and C++ (3 days)
Python based Web Framework and Web Content Management Systems (CMS)
The main Python based CMS and Web Framework systems are Zope/Plone, Django, TurboGears and Pylons. They are all in active use on the Web as well ad in Web based Intranets. Courses covering all of these frameworks are available. Most of the courses are aimed at developers, however, in the case of Zope/Plone there is also a course module for users.
Django, Turbogears and Pylons are all based on the Model View Controller (MVC) Pattern.
Selecting a framework often depends on the first deciding on implementing a Python based solution, and secondly on the preferences and experience of the Python progammers who will be building the applications as well as the availability of experienced programmers and developers. Also relevant may the cost of migrating from one framework to another, as well as realising that these frameworks are themselved dependent on other frameworks.
Django grew out of work on development of the World Online web site. It is a large and complex and fairly stable framwework.
The design of Pylons was based on that of Ruby on Rails and Pylons itself made use of various Python framework components. Pylons was designed as a fast lightweight framework and is gaining in popularity.
TurboGears, often described as a meta-framework, is built on a collection of tools such as SQLObject for the database layer, CherryPy for HTTP middleware technology, the Kid templating system and the MochiKit AJAX library.
Plone and Zope are used in the development of Content Management Systems. Plone itself is built on top of Zope. Till recently Plone was built on top of Zope 2. Zope 3, which is more complex than Zope 2 is a built on a rich component oriented architecture.
If you are new to programming or web development and are contemplating the use of Python we suggest that you read our notes on introductory courses first.
Recommended Book Reviews
Cannot find it....
If you are looking for a particular Python training course title but cannot find it in the above list, please contact the sales team via our training enquiries form or by telephone using the number shown at the top of the right hand column.
View individual course outlines above to see available dates and locations.