.. meta:: :description: Python basics: could be that you find yourself programming useful things on day two :keywords: schulung, training, raspberry, programming, python, introduction, einführung, datatype, dictionary, list, tuple, mutable, immutable, function, class, exception, batteries, string, encoding, file Python: The Language Fundamentals ================================= .. contents:: :local: .. image:: /_images/python-logo-master-v3-TM.png :alt: Python logo :align: right :scale: 50% .. sidebar:: .. list-table:: :align: left * * **Duration** * 2-3 days * * **Language** * Trainer language is English or German * * **Material** * * :doc:`/trainings/material/soup/python/basics/group` * :doc:`Complete Python material ` * * **Related** * * :doc:`advanced` * :doc:`swdev` * :doc:`misc` * * **Booking** * :doc:`/trainings/booking` Course Outline -------------- Python's strengths are ... * It is taught in no time (you'll find yourself writing useful programs on day two) * It is powerful * It comes with a huge toolkit (the *standard library*) This course gives a thorough but easy introduction to Python. With the help of many small exercises, you'll learn how to write Python programs, get an overview of the functionality in the standard library, and get an idea :doc:`what else ` Python can do. Here is an outline of the course; see the :doc:`course material ` for more detailed information. * **Intro** * Installation of the Python interpreter ("the language") * What's a program? Program structure, syntax, and how programs are run * **Variables and Types** * What's a variable? What's a type? * Some simple datatypes * Associative (e.g., ``dict``) and sequential (e.g., ``list``) datatypes, and their access methods * **Control flow** * Conditional: ``if`` * Loops: ``while`` and ``for`` * ``range``, and related helpers * **Functions and Modules** * What's a function? (Type annotations) * Modularization, and the ``import`` statement * **Files and Directories** * File I/O * The ``os`` module, and related functionality Prerequisites ------------- Attendees should have a little programming experience from other languages. Python is easy to learn, but complete computer noobs demand a different focus than this course has.