Skip to content

Python Basics

About

  • Level: Beginner
  • Lectures: 40 hours
  • Self-study: 20 hours
  • Exercises: 323
  • Lines of Code to write: 1098
  • Format: e-learning + weekly online teleconference with instructor
  • Language: English or Polish

Description

This beginner-friendly course introduces students to Python programming through a practical, hands-on curriculum that follows the syllabus from environment setup to basic modules and object-oriented concepts. Topics include core syntax, data types and structures, control flow and loops, file I/O, functions and exceptions, common idioms, and a gentle introduction to classes and modules; learners complete exercises that emphasize writing, testing, and organizing readable code for real tasks.

Advantages

Participants will build a solid foundation that shortens the time required to become productive in Python. The course focuses on practical problem-solving, defensive programming, and testing patterns that reduce common bugs and make debugging easier. Graduates will be prepared to automate routine tasks, contribute to codebases, and advance to intermediate and specialized Python courses with confidence.

Target Audience

  • Absolute beginners and students new to programming who want a practical introduction to Python.
  • Developers from other languages seeking a concise, hands-on Python refresher and guidance on Pythonic idioms and best practices.
  • Data analysts and scientists who need to automate tasks and preprocess data using Python's standard tools.
  • Educators and trainers looking for a structured syllabus to teach Python fundamentals in workshops or classrooms.
  • Anyone preparing for intermediate Python topics, web development, or data-science paths who needs a reliable foundation.

Format

The course is delivered as a blended learning experience, comprising numerous short videos that progressively introduce concepts and techniques through a series of practical examples. The course format combines e-learning modules with weekly online teleconferences with the instructor for Q&A, discussions, and code reviews.

During the self-study phase, students complete practical exercises that apply the learned techniques. Each exercise is designed to have 100% test coverage, allowing students to verify their solutions. Additionally, students will have access to a spreadsheet to track their progress.

Students will also receive downloadable resources, including code samples, exercise templates, and reference materials to support their learning journey. Since 2015, we have refined our materials based on student feedback to ensure clarity, engagement, and practical relevance. All code listings undergo automatic testing (over 28,000 tests) to ensure accuracy and reliability. All materials, code listings, exercises, and assignments are handcrafted by our trainers without the use of AI. All case studies and examples are based on real-world scenarios drawn from our extensive experience in software engineering.

Working language of the course is either English or Polish.

Course Outline

  1. Preparing the working environment and introduction to programming:

    • Introduction to the Python language and release cycles
    • Introduction to an Integrated Development Environment (IDE)
    • Elements of programming language syntax: variables, comments, operators
    • Introduction to the Python console (REPL), syntax, indentation, and standards
  2. Syntax:

    • Variables
    • Comments
    • Print and value substitution
    • Basic operators
    • Built-in functions
    • Best practices
  3. Data types and data structures:

    • Numeric data types (int, float)
    • Logical data types (bool, None)
    • Strings (str)
    • Sequences and sets (tuple, list, set)
    • Maps (dict)
    • Nested data structures (list[tuple], list[list], list[dict])
    • Indexing, slicing, and unpacking
  4. Control statements:

    • Logical, comparison, and membership operators, Boolean algebra (and, or, not)
    • Conditional statements (if, else, elif)
  5. Loops:

    • while loop
    • for loop
    • Unpacking in loops
    • Iterating over nested data structures
    • Iterating over dictionaries
    • List, set, and dictionary comprehensions
  6. Files:

    • Relative and absolute paths
    • Access modes and character encoding
    • File operations: reading, writing, appending
  7. Functions:

    • Defining functions and returning values
    • Parameters: required, optional
    • Arguments: positional, named (keyword)
    • Namespace scope and best practices
  8. Exceptions:

    • Raising and catching exceptions
    • Common exceptions and hierarchy
    • Assertions
    • Call stack analysis
  9. Idioms:

    • any, all
    • sum, min, max, sorted
    • dir, vars
  10. Object-Oriented Programming:

    • Classes and instances
    • Attributes and the initializer method
    • Methods
    • Inheritance
  11. Modules:

    • Brief introduction to the standard library
    • Brief introduction to the most commonly used third-party modules
    • Searching for and installing new modules

Our Experience

AATC trainers have been teaching software engineering since 2015. We have already delivered over 11,000 (eleven thousand) hours of software engineering training to more than 32,000 (thirty-two thousand) students worldwide.

Requirements

  • Basic knowledge of programming concepts is welcomed but not required
  • Familiarity with using an IDE (e.g., PyCharm, VSCode) is welcomed but not required
  • Familiarity with using version control systems (e.g., Git) is welcomed but not required

Setup

  • Newest version of Python
  • IDE of your choice (e.g., PyCharm, VSCode)
  • Git installed and configured
  • GitHub account
  • Web browser (e.g., Chrome, Firefox, Safari, etc.)

Apply

If you are interested in taking this course, please contact us at info@astronaut.center