Python Programming from Scratch

 

Course description

Overview

The course provides a practical introduction to programming in Python 3.x. Participants move from running code and working in tools (IDE/CLI) to the conscious use of data structures, functions and classes, project organization (modules/packages), exception handling, and testing. Subsequent modules include working with files (including CSV/Excel), text processing using regular expressions, basics of database access (SQLite/PostgreSQL/MySQL), and elements of downloading and parsing data from the web (HTML/XML). The classes are exercise-oriented and task-based – around 70% of the time is hands-on coding.

Course objectives

Preparing participants to independently create scripts and simple applications in Python, including task automation, working with files and databases, and basic integration with web resources.

Book the course

  • Format: Remote
  • Language: PL / EN (on request)
  • Type: Public course, guaranteed
  • Date: 10-13.03.2026
  • Duration: 4 days (7h/day)
  • Trainer: Przemysław Jarnot
  • Validator: Przemysław Jarnot

BOOK NOW - 4130 PLN 

Net price per participant.

Verification criteria and validation method

Validation is carried out on an ongoing basis: through practical tasks, code analysis, and observation of participants’ work. At the end, a mini-project or a set of summary tasks is completed. Criteria:

  • correctness of operation,
  • readability/maintainability of code,
  • error handling,
  • basic testing and meeting task requirements.

Target group

People with no prior experience in Python (or with limited experience) who want to start programming in this language in a structured way. The course is also suitable for analysts and business specialists who want to automate reporting and data work.

Prerequisites

None. Basic computer skills are required.

Training methods and materials

Methods: short introductions and demonstrations, workshop work (coding), individual and pair exercises, case studies, and Q&A during the classes.

Materials: exercise set, sample scripts, electronic materials (presentation/handout), best-practice guidelines, and summary materials after the course.

Platform / communicator and technical requirements

The course is delivered remotely using the NobleProg platform (DaDesktop) or MS Teams – organizational details are provided before the start.

Technical requirements: computer with Internet access (recommended min. 10 Mbps), web browser (Chrome/Edge/Firefox), headphones and microphone; camera recommended. The working environment (Python 3.x and tools) may be provided to participants via the platform or prepared locally.

Access codes

Links, login details, and organizational instructions are sent to participants by e-mail before the course.

Funding information

The service may qualify for funding under the Development Services Database (BUR) – in accordance with the rules of the operator relevant to the given region and type of support.

Trainer information

Przemysław Jarnot delivers courses and projects in the field of programming and web technologies. He specializes, among others, in Python (NumPy, Matplotlib, databases, Flask, Qt), as well as C/C++, Java, C#, R, backend (PHP, SQL), and fundamentals of infrastructure and systems. Delivery languages: Polish, English, Greek.

Learning outcomes

Knowledge

  • Knows the basic constructs of the Python language and the data model (types, collections).
  • Understands the principles of code organization (modules, packages) and basics of distribution.
  • Understands exception and testing mechanisms (doctest, unittest) and the importance of test coverage.
  • Knows the basics of working with files, databases, and web resources.

Skills

  • Writes readable scripts and simple components (functions, classes), using standard libraries.
  • Handles errors and creates basic automated tests for code.
  • Reads and writes data to files (including CSV/Excel), processes text (regex), and organizes files/directories.
  • Performs basic database operations and uses ORM (SQLAlchemy).
  • Downloads and parses data from the web (HTML/XML) and automates simple interactions.

Social competences

  • Verifies own solutions, cares about code quality and team communication (questions/feedback).
  • Can work independently with documentation and examples, following best practices.

Course program (outline)

Introduction to Python Programming

  • Running Python code
  • Using Python development tools (IDEs and command-line tools)
  • Working with Python shells and iPython as well as iPython Notebook

Data types and operations

  • Integers and floating-point numbers
  • Strings and bytes
  • Tuples and lists
  • Dictionaries and ordered dictionaries
  • Sets and immutable sets

Organizational and distribution code

  • Creating modules and packages
  • Distributing code to repositories

Object-oriented and functional programming

  • Creating and using functions and classes
  • Modifying functions and classes using decorators
  • Introduction to metaclasses

Error handling and testing

  • Handling and raising exceptions
  • Writing and running tests (doc tests and unit tests)
  • Checking test coverage

Working with files and directories

  • Accessing different file types and file handling principles
  • Creating, reading, updating, and deleting files (including plain text files, CSV, as well as Microsoft Word and Microsoft Excel files)
  • Extracting data from text files using regular expressions
  • Creating and deleting directories, listing and searching for files

Accessing Databases

  • Selecting, inserting, updating, and deleting data
  • Generic database API based on SQLite 3, PostgreSQL, and MySQL
  • Using Object Relational Mapper (SQLAlchemy)
  • Working with NoSQL databases

Conquering the web

  • Downloading web pages
  • Parsing HTML and XML
  • Automatic filling of web forms
  • Building web applications in Python
People flying on paper airplanes symbolizing the path to the course.

No budget? Get funding!

Logo of the Individual Funding System for Adults

A program that allows you to quickly and easily obtain funds for courses for individual participants.

Learn more

Offer of public courses with guaranteed dates presented using pictograms in the form of bolts.

Why a guaranteed course?

  • Guaranteed delivery — the course takes place regardless of the number of participants.
  • Knowledge exchange and networking with professionals from various industries.
  • Interactive, live sessions — not only theory, but also exercises and discussions.
  • Flexible online format — join from anywhere.

Learn more

Two persons looking at a tablet

Need Help?

Reach out to learn more about our team and the kinds of tailored solutions we can offer your organization.

Get in Touch