Trusted Training Partners

Quick Look Course Summary:Python short course in South Africa
  • Next Public Course Date:

  • Length: 3 day(s)

  • Price (at your venue): 1 Person R 16,700.00 EX VAT 3 Person R 11,644.28 EX VAT 10 Person R 7,836.00 EX VAT

  • Certification Type:Non-Accredited

  • Locations & Venues: Off-site or in-house. We train in all major city centres throughout South Africa.

Get Free & personalised
Training Advice

    What is the programming language known as Python?

    The Python programming language dates back to 1991.  When it was first created it was mainly considered as a gap-filler, and primarily used as a method of writing scripts that ‘automated the boring stuff’ or that rapidly prototyped applications that would eventually be implemented in other programming languages.

    Python has risen in status when it comes to infrastructure management, data analysis and modern software development

    While Python has been in use for  close on 30 years or so, in the past few years the Python programming language has risen in status when it comes to infrastructure management, data analysis and modern software development.  No longer considered as a back-room utility language as it once was, Python has  now become a key player in systems management and web application as well as an important driver of the upsurge in machine learning and big data analytics.

    In a world that has become increasingly data-driven, organisations need professionals who can extract meaningful insights from data to make better business decisions.  This is where Python plays a huge role.

     

    Advantages of Python as a programming language

    Python has several advantages that both beginners and experts can leverage.

    Easy to learn and easy to use

    Where Python is concrned the syntax is designed to ensure that it is straightforward as well as readable. Because the number of features in the Python language itself are limited it takes a relatively short amount of time and effort to obtain results in producing your very first programs.  And because of its simplistic design Python is the perfect teaching language which novices find easy to grasp and which enables developers to spend less time thinking about language complexities or deciphering code that others have put in place and instead devote more time to thinking about the problem in question that needs to be solved.

    Python is both supported and widely adopted

    Python runs on all major operating systems and platforms and the majority of the minor ones also.  A large number of API-powered services and major libraries have Python wrappers or bindings which enables Python to freely interface with those services and easily use those libraries.

    Python is versatile

    While it is widely understood that Python is not the fastest programming language available, where it is lacking in speed it makes up for this in versatility.  Python is used to build professional quality software for both web services and standalone applications.

    Python keeps evolving

    In keeping pace with modern software development practices each revision of Python encompasses new and useful features.  For example, asynchronous operations and coroutines are now standard parts of the language which makes it easier to write apps in Python that perform concurrent processing.

    Python uses

    Python is essentially used as a scripting and automation language.  Python is also used to automate application GUIs or interactions with web browsers or to do system configuration and provisioning in tools like Ansible and Salt.

    Python General Application Programming

    Command-line and cross-platform GUI applications can both be created with Python and deployed as self-contained executables.  While Python does not have the native ability to generate a standalone binary from a script, third-party packages such as cx Freeze and Pylnstaller are used to achieve this.

    Data Science and Machine Learning with Python

    One of the fastest moving areas in the IT industry at large is sophisticated data analysis and is also one of Python’s primary use cases.  Python is the most popular high-level command interface for machine learning libraries and other numerical algorithms since most of the libraries used for data science or machine learning have Python interfaces.

    Python RESTful APIs and web services

    From simple REST APIs in a few lines of code to fully-fledged data-driven sites, Python’s native libraries offer rapid and convenient solutions.  The latest versions of Python also have strong support for asynchronous operations which, with the right libraries, enable sites to handle tens of thousands of requests per second.

    Python Code Generation and Metaprogramming

    Everything in the Python language is an object including Python libraries and modules which enables Python to work as an extremely efficient code generator and which essentially means that it is possible to write applications that have their own functions in Python.  This affords Python the flexibility that would be extremely difficult if not near to nigh impossible to achieve using other programming languages.  Python is also used to create code in other languages and to drive code-generation systems such as LLVM.

    Python ‘Glue code’

    Python can enable disparate code (such as libraries with C language interfaces) to interoperate which means that Python is often referred to as a ‘glue language’.  Python can therefore be used to connect applications or program domains that cannot talk to each other directly.

    What Python is not suited for

    There are undoubtedly tasks that Python is not suited for.  Since it is a high-level programming language it is not suited to system-level programming.  It is also not the ideal language used for cross-platform standalone binaries.  Python is also not the ideal language to use when the need for greater speed poses a genuine issue.

    Simple Programming with Python

    Since Python’s syntax is designed with little pretense and is clean and readable, a standard “hello world” in Python 3.x is simply:

    Print(“Hello world!”)

    The other language features of Python are designed to complement common use cases where modern object types such as Unicode strings are built into the language directly.  Data structures such as dictionaries and lists are standard-issue items.

    Python versions: 2 vs 3

    There are currently two versions of Python:  Python 2.x and Python 3.x which are vastly different from each other.  The older legacy version, Python 2.x, is currently being supported during 2020 and is likely to unofficially persist thereafter.  Python 3.x, which is the current version, has a number of useful and important features such as new syntax features, a more efficient interpreter and better concurrency controls that were not available in the older version of the language.

    Python Libraries

    Python’s success relies on a rich ecosystem of first and third-party software and uses a strong standard library as well as a variety of readily used and easily obtainable libraries from third-party developers and has been fortified over many decades of expansion and contribution.

    Common programming tasks such as math, string handling, networking, asynchronous operations, threading, file and directory access and multi-process management are catered for using Python’s standard library.

    Python Speed

    One of the caveats that needs to be borne in mind when using Python as a programming language is that it is generally considered to be slow.  This is due to the fact that the dynamism and malleability of objects in Python make it difficult to optimize for speed.

    Why is Python used for Machine Learning?

    • The first reason why Python is used for machine learning is due to the fact that it is a language that invariably keeps programming simple.  When the language was first developed it was designed to be easy to both write and read.  Especially in environments where it changes hands from one team to the next, code is read far more often than it is written.  Therefore, when inheriting a machine learning application from another developer, especially if it has a certain amount of business logic or uses multiple third party components, it is a great advantage if it is written in a language that adds little extra cognitive overhead.  Good Python code will have that quality that is better than other programming languages.
    • Python’s language design is also useful for machine learning since it provides high-level, object-based abstractions for tasks.  Complex, multi-stage workflows are the result of machine learning applications.
    • Python also has a wealth of machine learning libraries and frameworks that it makes use of  such as Scikit-learn, TensorFlow, CNTK and Apache Spark.
    • Python’s library ecosystem makes provision for many of these frameworks to be installed in one’s workspace using a single command. These features were made possible only recently when Python changed its library packaging mechanisms to make it easier to distribute the platform-specific binaries needed for many machine learning frameworks.

    Memory Management

    • High-level languages such as Python provide abstraction that extends into numerous areas.  The intricate details are hidden from the programmer in Python which therefore allows the programmer to focus on the task at hand.
    • The Python runtime memory-manages Python’s built-in constructs and data abstractions, sets, dictionaries, lists and tuples.  While Java does more or less the same thing, Python places a smaller number of procedural barriers between the user and the end results and is considered to be less verbose than Java.
    • Machine learning apps make use of Python’s memory-managed constructions primarily for the sake of organizing an application’s logic or data flow rather than for performing actual computation work. Most of the computational work is handled by external libraries such as NumPy.   Yet, the abstraction provided by the language and runtime means that the memory management duties for such things are automatically handled several layers below the user’s actions.

    Data Courses South Africa

    Coding Courses Johannesburg

    Python Programming Courses Johannesburg

    Python for Beginners Short Course (South Africa)

    Course Introduction

    With the Python for Beginners Course you will learn the basics of how to program using Python.  This course is suitable for those individuals who are either new to the programming language or may even have prior experience using other programming languages.  This course covers Python version 3.x.  However, it also deals with the differences between the two versions of Python, that is version 2.x and version 3.x which is the current and future version of the language.

    Course Outline

    Upon successful completion of this course you will be equipped to:

    • Learn the mechanics of how Python works and what it is generally suitable for
    • Understand how Python fits into the genre of programming languages
    • Learn to work with as well as manipulate strings using Python
    • Learn to perform math operations using Python
    • Learn Python flow control processing
    • Learn how to write and read from files using Python
    • Learn how to write functions using Python
    • Learn how to handle exceptions using Python
    • Learn how to work with dates and times using Python
    • Learn how to work with Python sequences such as lists, arrays, dictionaries, and sets
    • Learn how to collect user input and output results using Python

    Course Duration

    3 days

    Who is this course suitable for?

    This course is suitable for those individuals who wish to learn programming using Python and who may or may not have prior experience in working with computer programming languages. This course is targeted at those who want to close any gaps they may have in their data science skills and knowledge. IT professionals who need to rapidly enhance their data science toolkit with demonstrable and practical skills would benefit from the technical nature of this course. Professionals working in a variety of industries will learn how to increase efficiencies and identify new opportunities for their organisation with key data and programming skills using Python.

    Recommended Prior Learning

    It is recommended but not necessarily compulsory that delegates have some programming knowledge or experience prior to attending this course.  Since this course is of a strong technical nature it is also highly recommended that delegates have a basic understanding of mathematics and statistics.

     

    **Quote does not include Any Exam Fees (if applicable)

    IMPORTANT ACTION: Do Not Wait To Improve Your Skills.  

    Book Now By Completing Online Booking Form / Customised Proposal or Obtain Approval For Your Already Received Customised Proposal

    Realize incredible savings by sending more delegates

    Do you want to save costs by doing training at your premises?

    Save costs by providing own laptop

    Region *

    Please Contact Us Now - We Will Respond in 15 Minutes


      Accredited Courses

      Additional Courses

      Leadership & Management Courses

      Software & IT Courses

      Top Rated