Duration
4 weeksWeekly study
6 hours100% online
How it works
Practical Python Programming: From Core Concepts to Data Analysis with NumPy
Why learn Python and NumPy?
Python is no longer just a beginner-friendly scripting language; it is the backbone of modern software development, data science, automation, and AI. By pairing Python’s intuitive syntax with NumPy’s fast vector processing, you gain the exact tools used by financial analysts, machine learning engineers, and software developers worldwide.
Learn by coding, not reading
Setting up local environments, understanding array shapes, or mastering multi-dimensional indexing can feel overwhelming through passive video tutorials. This course breaks down programming into bite-sized, practical exercises.
Syllabus
Week 1: Python Setup & Fundamental Syntax
Get comfortable with professional setup, variables, and essential data types. Master string indexing, slicing, formatting with f-strings, and working with lists and nested list structures.
Week 2: Control Flow, Logic & Meeting NumPy
Dive into conditional decision-making (if/elif/else), master for and while loops, and write concise list comprehensions. Build reusable functions with flexible arguments (args, kwargs), and import your first NumPy modules.
Week 3: From Lists to Arrays & Advanced Manipulation
Transition from standard Python lists to high-performance NumPy arrays. Learn array generation, multi-dimensional shapes, broadcasting rules, integer/boolean indexing, partial sorting, and array concatenation.
Week 4: OOP, File Systems & Vectorised Math
Bring it all together with Object-Oriented Programming (classes and methods) and local file handling. Perform advanced text operations using numpy.char, map key-value data with dictionaries, and solve linear algebra and math problems with vectorised operations.
Syllabus
Week 1
Python Setup & Fundamental Syntax
Start Coding with Python
Meet the course structure, set up professional development tools, and run your first Python program while learning how comments make code easier to understand.
Working with Values in Python
Explore variables, common data types, type conversion, assignment, arithmetic, comparisons, and Boolean logic, then apply them in practical coding activities.
Building and Formatting Text
Work with Python strings through concatenation, indexing, slicing, membership checks, escape characters, common methods, and formatted string literals.
Organising Data with Lists
Create and modify Python lists, access individual items, apply common list operations, and use nested lists to represent structured collections of data.
Week 2
Control Flow, Logic & Meeting NumPy
Controlling Program Flow
Use Boolean expressions and conditional statements to make programs respond to different situations, and practise writing clear branches with correct indentation.
Repeating Work Efficiently
Automate repeated actions with for and while loops, build list comprehensions, control execution with break and continue, and avoid infinite loops.
Designing Reusable Functions
Define and call functions, work with parameters and return values, document behaviour, use flexible arguments, and explore the principles of recursion.
Structuring Code and Introducing NumPy
Organise Python code with modules and imports, distinguish imported code from executable scripts, and discover why NumPy is useful for numerical data.
Week 3
From Lists to Arrays & Advanced Manipulation
Creating NumPy Arrays
Move from Python lists to NumPy arrays, explore ndarray properties and data types, and create arrays from lists, empty structures, ranges, and evenly spaced values.
Reshaping Data and Broadcasting
Use tuples to describe dimensions, change array shapes, transpose data, and understand how broadcasting makes operations between compatible arrays possible.
Selecting Data from Arrays
Access and filter NumPy data with indexes, integer arrays, slices, comparisons, and Boolean masks while tracking how each selection affects the result.
Reordering and Combining Arrays
Sort and partially sort values, generate and shuffle samples, join arrays by concatenating or stacking them, and divide arrays into smaller sections.
Week 4
OOP, File Systems & Vectorised Math
Modelling Programs with Objects
Create classes and instances, work with attributes and methods, use constructors and representations, distinguish class and instance variables, and organise code in packages.
Reading, Writing, and Exploring Data
Read and write files with Python, load and save data with NumPy, handle real datasets, and search arrays to locate values and identify maximums.
Mapping and Counting Data
Use dictionaries to organise key-value data, add and retrieve entries, inspect keys and values, and apply NumPy tools to find unique values and frequency counts.
Processing Text with Python and NumPy
Join and transform Python strings, distinguish text from bytes, and apply NumPy string operations across arrays for case changes, checks, encoding, and translation.
Fast Array Calculations
Apply vectorised mathematical operations and reductions to NumPy arrays, then use dot products and matrix multiplication to perform essential linear algebra calculations.
Review and Next Steps
Consolidate the course’s Python and NumPy concepts with a final knowledge check, reflect on the practical skills developed, and identify useful directions for further study.
When would you like to start?
Start straight away and join a global classroom of learners. If the course hasn’t started yet you’ll see the future date listed below.
Available now
Learning on this course
On every step of the course you can meet other learners, share your ideas and join in with active discussions in the comments.
What will you achieve?
By the end of the course, you‘ll be able to...
- Build clean, functional Python scripts using control logic, custom functions, and object-oriented principles.
- Harness NumPy to execute high-performance numerical operations and vector math without manual loops.
- Manipulate, slice, reshape, and filter multi-dimensional datasets using advanced indexing and boolean masks.
- Work efficiently in a professional JetBrains IDE with real-time feedback and built-in hints.
- Read, write, and analyze external data files to automate real-world analytical tasks.
Who is the course for?
This course is designed for absolute beginners, aspiring data analysts, and self-taught programmers who want to build a solid Python foundation. If you prefer learning to code by actively solving challenges in a professional editor rather than sitting through long lectures, this course was created for you. No previous programming experience is required. Learners should be comfortable installing software and following step-by-step technical instructions.
You don’t need a deep computer science background to get started. If you want to automate repetitive tasks, analyse complex datasets, or build clean, maintainable software, this learning path is your most direct route.
What software or tools do you need?
You’ll write code directly inside a JetBrains IDE – the exact tool real developers rely on every day. With instant, automated feedback on every script, function, and array operation you write, you’ll build job-ready skills step by step through hands-on practice.
| Best ValueBest Value - learn more, save more! | |||
Ways to learn | Buy this course | Subscribe & save | Start learning today |
|---|---|---|---|
| Choose the best way to learn for you! | $79/one-off payment | $244.99 for a whole year Automatically renews | Free |
| Fulfill your current learning need | Develop skills to further your career | Try this course - with limits | |
| Access to this course | tick | tick | Limited to 4 weeks |
| Access to 1,000+ courses | cross | tick | cross |
| Learn at your own pace | tick | tick | cross |
| Discuss your learning in comments | tick | tick | tick |
| Certificate when you're eligible | Printed and digital | Digital only | cross |
Cancel for free anytime |
Ways to learn
Choose the best way to learn for you!
Subscribe & save
$244.99 for a whole year
Automatically renews
Develop skills to further your career
- Access to this course
- Access to 1,000+ courses
- Learn at your own pace
- Discuss your learning in comments
- Digital certificate when you're eligible
Cancel for free anytime
Buy this course
$79/one-off payment
Fulfill your current learning need
- Access to this course
- Learn at your own pace
- Discuss your learning in comments
- Printed and digital certificate when you’re eligible
Start learning today
Free
Try this course - with limits
- Limited to 4 weeks
Find out more about certificates, Unlimited or buying a course (Upgrades) Sale price available until 2 November 2026 at 23:59 (UTC). T&Cs apply. | |||
Find out more about certificates, Unlimited or buying a course (Upgrades)
Sale price available until 2 November 2026 at 23:59 (UTC). T&Cs apply.
Learning on FutureLearn
Your learning, your rules
- Courses are split into weeks, activities, and steps to help you keep track of your learning
- Learn through a mix of bite-sized videos, long- and short-form articles, audio, and practical activities
- Stay motivated by using the Progress page to keep track of your step completion and assessment scores
Join a global classroom
- Experience the power of social learning, and get inspired by an international network of learners
- Share ideas with your peers and course educators on every step of the course
- Join the conversation by reading, @ing, liking, bookmarking, and replying to comments from others
Map your progress
- As you work through the course, use notifications and the Progress page to guide your learning
- Whenever you’re ready, mark each step as complete, you’re in control
- Complete 90% of course steps and all of the assessments to earn your certificate
Want to know more about learning on FutureLearn? Using FutureLearn
Do you know someone who'd love this course? Tell them about it...
More courses you might like
Learners who joined this course have also enjoyed these courses.
