
This course includes our updated coding exercises so you can practice your skills as you learn.
See a demo
Explore how Python, a general-purpose language, enables roles from software developer to data analyst or scientist, with automation and AI-capable workflows, using Python 3.
Write Python with simple tools or integrated development environments, then run source code via a free Python interpreter; use Anaconda with Jupyter Notebook for setup, plus a free online version.
Install the Anaconda distribution from the official site, launch Anaconda Navigator, and use Jupyter Notebook to write and run Python code in cells, manage notebooks, and organize files locally.
Install Anaconda or use online environments like Google Colaboratory and Jupiter Online to run Python notebooks, with Colab preferred and Jupiter Lab as a plan B when needed.
This course guides you from no programming to the certified entry-level python programmer exam through basics, focused study, videos, jupyter notebooks, exercises, quizzes, and a mock exam.
Open the Jupyter notebook via Anaconda Navigator, create a new notebook, and write a print statement that outputs hello world with a string in single quotes, learning function invocation.
Explore how the Python print function handles quotes, apostrophes, and escaping in a Jupyter notebook. Practice combining prints, controlling spaces and newlines with commas and the \n escape sequence.
Explore variables as named memory boxes that store data in Python, using the assignment operator to create and update them, then print values while noting undefined names and case rules.
Explore Python data types—strings, integers, floats (which require a dot), and booleans—and how variables auto-detect types from value, with quotes for strings and True/False mapping to 1 and 0.
Explore how Python uses comments to document code and how hash signs mark line or all-line comments. See how commenting out sections can deactivate code temporarily in a Jupyter notebook.
Learn to work with integers and floats, use underscores for readability in Python 3.6, and recognize scientific notation and occasional octal or hexadecimal representations in Python.
Create a new Jupyter Notebook named module one operators to explore Python's plus, minus, star, division variants, modulo, and the power operator, with type-based results.
Reassign values with the assignment operator, update variables via expressions, and use shortcuts like += and *=, then explore string concatenation with + and repetition with * across data types.
Learn to use Python's input function to build interactive programs, prompt for a name, store the string result in a variable, and print greetings.
Explore the theory behind Python and languages, including machine code and the translation process through compilation or interpretation. Learn how the Python interpreter runs scripts and checks syntax and semantics.
Learn how to perform type casting in Python by converting user input from strings to float or int, and from numbers to strings with str, using height and year examples.
Explore unary and binary operators, study the order of operations, learn float precision limits in Python, and understand right-sided exponentiation binding.
Explore the len function to compute string length and customize print behavior with end and sep keyword arguments, changing default newlines to a period and separators to hyphens.
Learn about bitwise operators in Python, including ampersand, bar, tilde, caret, and left and right shifts, with simple examples and note that these ops are rarely needed.
Master Python conditional logic with if, elif, and else blocks for decisions based on user input. Use proper indentation and note that equality uses double equals.
Explore Python's logical operators in conditions, including not equals (!=) alongside <, >, <=, >=, ==, with booleans true and false, if statements, and the distinction between assignment and equality.
Learn how to combine multiple conditions in Python with and, or, and not in if statements, using examples with age and country, understanding operator priorities, and improving readability with brackets.
Implement nested if statements in Python by prompting the user about traveling and Asia, then print outcomes based on responses. Emphasize indentation to manage multi-level conditions.
Learn how Python while loops work, including the syntax, condition, and counter incrementation, with a practical number-guessing example and notes on avoiding infinite loops and multi-line output.
Explore how Python for loops iterate over sequences, including strings, and how range generates numbers with start-inclusive, stop-exclusive behavior and multiple forms.
Master Python break and continue in loops, learning how break exits a loop when conditions are met and how continue skips iterations using modulo checks for numbers divisible by five.
Explore python loop features, including the pass statement, nested loops, and for and while loops with else clauses, plus how break affects else in practice.
Master lists in Python, a key collection type. Learn to declare empty and populated lists, access elements with zero-based indexing, and use slicing and negative indices.
Learn to delete elements from a list using the del keyword, including slicing to remove ranges, preserving first elements, and even deleting the list itself.
Learn how to add a new element to an existing list using append and insert, understanding that methods belong to the list and are invoked with a dot and brackets.
Explore iterating lists in Python with for loops and sequences like strings to access elements in order. Use a for loop or range(len(list)) to access by index and sum expenditures.
Learn how to swap values in variables and lists using a temporary variable and a Python one-liner; compare sort vs sorted and in-place versus new lists.
Learn how the in operator checks membership in lists and strings, including the not in negation, through a guest list example that greets invited names and rejects others.
Learn how to copy lists in Python with slicing to create independent lists, contrasting with assignment that copies references.
Use list comprehensions in Python to build lists from ranges in one line, replacing loops and append calls, and filter with if conditions to skip numbers.
Learn how to create nested lists in Python and access their elements with multiple indices. Use nested loops and list comprehensions to model multidimensional data, like tables in Excel.
Learn to add and multiply lists in Python using the plus operator for concatenation and integer repetition, with examples like a 0 to 1 sequence multiplied ten times.
Explore strings as sequences by indexing and slicing to read characters, learn immutability, and apply built-in methods such as upper, lower, and is numeric to transform and validate input.
Explore tuples in Python: create empty and one-element tuples with round brackets and commas; compare with lists, highlight immutability, and show read-only indexing and lack of append or delete.
Explore tuple operations in Python, including len, in and not in, iteration, concatenation, repetition, and the immutable nature of tuples, and contrast them with lists to decide usage.
Combine lists and tuples by nesting: build a capitals list of tuples, print city, country, and population, and modify the inner list by appending weight measurements.
Learn how dictionaries store key-value pairs in curly braces, access values by unique, immutable keys, and that values can be any type, while lists cannot be keys.
Learn to create and update dictionaries in Python using {}, use update, check keys with in, delete with del, and iterate by keys, values, or items.
Learn to write your own functions in Python, using def, a name, parentheses, and a colon, then call them to improve readability, maintainability, and reuse.
Explore how functions receive values via parameters and how to pass lists to compute averages. Use positional and keyword arguments to control function calls and parameter behavior.
Learn to define default parameter values and use keyword arguments in Python, with examples like print's sep and end and a letter-count function, and understand positional versus keyword argument rules.
Discover how name scopes govern variable accessibility in Python, detailing local and global variables, shadowing, and the limited role of the global keyword with mutable lists.
Explore how Python functions can cause effects and return values, noting that print returns None and input returns user input as a value, a null value.
Learn how the return keyword transfers meaningful values from functions, replacing print statements, enabling stored results and early exits, including handling empty lists to return None.
Explore recursion by building factorial functions in Python, comparing iterative and recursive versions, and note how a stop condition prevents infinite calls and maximum recursion depth issues.
Learn how Python generators yield values one by one using next and for loops, convert them to lists, and note beginner cautions for exam readiness.
Explore how Python signals syntax and value errors, and learn to handle exceptions with try and except blocks, distinguishing specific errors like value error and zero division error.
Explore Python's exception hierarchy, from the bayes exception to concrete errors, including system exit, keyboard interrupt, index and key errors, type and value errors, and abstract templates.
Explain how exceptions propagate through nested function calls in Python, and how a single try-except in a parent function can catch errors raised by called functions.
Learn how to raise assertions in Python with the assert keyword to perform sanity checks, document expectations, and aid debugging, while avoiding use for input validation or error handling.
Celebrate completing the course by validating your Python foundations with coding exercises and quizzes, then attempt a mock exam that mirrors the real test and schedule your entry-level PCEP certification.
Discover PyCharm, a popular Python IDE, and see how it differs from Jupyter for building applications. Learn the basics, compare two versions—community and professional—and start using professional development tools.
Install PyCharm, activate a six-month professional license with a voucher, create a JetBrains account, and activate the license via manage subscriptions.
Launch your first PyCharm project, write and run a Python script, and view results in the console. Compare PyCharm with Jupyter notebooks, learn when to print and use auto-completion.
The only Python beginner course that combines hands-on learning in Jupyter Notebook with a 6-month free PyCharm Pro license — in collaboration with JetBrains.
---
Welcome! My name's Adrian and I'm a professional Software Developer. If you've never written code before and want to try programming for yourself, then you've just found an excellent course for that!
According to statistics, Python is in the top 3 programming languages all around the world. It is much easier and quicker to learn that most other languages. At the same time, it's extremely popular among software developers, data analysts and other IT professions. All of this makes it an excellent choice for your first programming language.
COURSE OVERVIEW
In this course, you'll learn the fundamentals of Python 3 and you'll get prepared for the Certified Entry-Level Python Programmer exam (PCEP). You don't need any programming experience. I'll show you how to install Python and start writing code from scratch. We'll then delve straight into the code together. You'll aso have a chance to create your own programs.
This course has 5 main modules, each one focusing on a different exam block. At the end of each module, you'll have a chance to solve an exam quiz to check your skills.
This course also comes with a mock PCEP exam at the very end. It will have the same format as your actual exam, with the same passing grade and time limit. It will show you what kinds of questions you can expect.
COURSE ADVANTAGES
• Concise and effective – No fluff or filler. Just 4.5 hours of focused, hands-on video lessons that get you writing real Python code fast, from a real software engineer
• Based on real-world practice – You’ll learn practical programming habits and workflows used by professional developers — not just exam theory.
• Reasonably priced – Get a complete exam prep and coding foundation at a fraction of the cost of traditional bootcamps.
• Official certificate of completion – Showcase your achievement with a printable Udemy certificate to strengthen your resume or LinkedIn profile.
• Bonus for students – In collaboration with JetBrains, every student receives 6 months of free PyCharm Professional access, a professional-grade Python IDE used by developers worldwide.