Udemy
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
Development
Web Development Data Science Mobile Development Programming Languages Game Development Database Design & Development Software Testing Software Engineering Development Tools No-Code Development
Business
Entrepreneurship Communications Management Sales Business Strategy Operations Project Management Business Law Business Analytics & Intelligence Human Resources Industry E-Commerce Media Real Estate Other Business
Finance & Accounting
Accounting & Bookkeeping Compliance Cryptocurrency & Blockchain Economics Finance Finance Cert & Exam Prep Financial Modeling & Analysis Investing & Trading Money Management Tools Taxes Other Finance & Accounting
IT & Software
IT Certification Network & Security Hardware Operating Systems Other IT & Software
Office Productivity
Microsoft Apple Google SAP Oracle Other Office Productivity
Personal Development
Personal Transformation Personal Productivity Leadership Career Development Parenting & Relationships Happiness Esoteric Practices Religion & Spirituality Personal Brand Building Creativity Influence Self Esteem & Confidence Stress Management Memory & Study Skills Motivation Other Personal Development
Design
Web Design Graphic Design & Illustration Design Tools User Experience Design Game Design Design Thinking 3D & Animation Fashion Design Architectural Design Interior Design Other Design
Marketing
Digital Marketing Search Engine Optimization Social Media Marketing Branding Marketing Fundamentals Marketing Analytics & Automation Public Relations Advertising Video & Mobile Marketing Content Marketing Growth Hacking Affiliate Marketing Product Marketing Other Marketing
Lifestyle
Arts & Crafts Beauty & Makeup Esoteric Practices Food & Beverage Gaming Home Improvement Pet Care & Training Travel Other Lifestyle
Photography & Video
Digital Photography Photography Portrait Photography Photography Tools Commercial Photography Video Design Other Photography & Video
Health & Fitness
Fitness General Health Sports Nutrition Yoga Mental Health Dieting Self Defense Safety & First Aid Dance Meditation Other Health & Fitness
Music
Instruments Music Production Music Fundamentals Vocal Music Techniques Music Software Other Music
Teaching & Academics
Engineering Humanities Math Science Online Education Social Science Language Teacher Training Test Prep Other Teaching & Academics
AWS Certification Microsoft Certification AWS Certified Solutions Architect - Associate AWS Certified Cloud Practitioner CompTIA A+ Cisco CCNA CompTIA Security+ Amazon AWS Microsoft AZ-900
Graphic Design Photoshop Adobe Illustrator Drawing Digital Painting InDesign Character Design Canva Figure Drawing
Life Coach Training Neuro-Linguistic Programming Personal Development Personal Transformation Mindfulness Life Purpose Meditation CBT Emotional Intelligence
Web Development JavaScript React CSS Angular PHP Node.Js WordPress Vue JS
Google Flutter Android Development iOS Development React Native Swift Dart Programming Language Mobile Development Kotlin SwiftUI
Digital Marketing Google Ads (Adwords) Social Media Marketing Google Ads (AdWords) Certification Marketing Strategy Internet Marketing YouTube Marketing Email Marketing Retargeting
Microsoft Power BI SQL Tableau Business Analysis Data Modeling Business Intelligence MySQL Data Analysis Blockchain
Business Fundamentals Entrepreneurship Fundamentals Business Strategy Business Plan Startup Freelancing Online Business Blogging Home Business
Unity Game Development Fundamentals Unreal Engine C# 3D Game Development C++ 2D Game Development Unreal Engine Blueprints Blender
30-Day Money-Back Guarantee
Development Programming Languages Python

Python - The Practical Guide

Learn Python from the ground up and use Python to build a hands-on project from scratch!
Rating: 4.7 out of 54.7 (3,868 ratings)
21,663 students
Created by Academind by Maximilian Schwarzmüller, Maximilian Schwarzmüller
Last updated 1/2021
English
English [Auto]
30-Day Money-Back Guarantee

What you'll learn

  • Students can take advanced Python courses and build real projects with it
  • Students may build upon the Python and Blockchain knowledge gained in this course and start working on their own Blockchain
  • Students can dive into Web Development or Data Science with Python
Curated for the Udemy for Business collection

Course content

13 sections • 230 lectures • 17h 41m total length

  • Preview01:51
  • What is Python?
    Preview05:07
  • Join our Online Learning Community
    00:21
  • Preview03:11
  • Running Python 3 as a Default (on macOS)
    00:36
  • Preview05:05
  • What is the Blockchain?
    Preview06:48
  • Preview04:41
  • Python Alternatives
    Preview03:58
  • Preview02:22
  • Preview03:28
  • Useful Resources & Links
    00:04

  • Module Introduction
    02:16
  • Understanding the REPL and Data Types
    04:25
  • Working with Variables
    04:46
  • Working with Numbers
    05:36
  • Using Operators
    03:48
  • Understanding a "Special" Behaviour when Working with Numbers
    03:35
  • Working with Strings
    02:18
  • Working with Lists
    05:09
  • Adding & Removing List Items
    03:02
  • Preparing the Blockchain - The Theory
    02:02
  • Installing our IDE
    05:17
  • Using Functions to Add List Items
    06:45
  • Blockchain Theory: Understanding Blocks
    00:49
  • Accessing the Last List Item
    03:24
  • Adding Arguments to Functions
    02:36
  • Understanding the "return" Keyword
    03:57
  • Using Default Arguments
    04:06
  • Working with Keyword Arguments
    02:59
  • Using the "input" Function
    03:00
  • Avoiding Repetitive Code Execution
    02:07
  • Understanding the Variable Scope
    06:49
  • Exploring the Official Documentation
    02:25
  • Adding Comments and Doc Strings
    04:20
  • Structuring Multi Line Code in Python
    01:56
  • Time to Practice - The Basics
    1 question
  • Wrap Up
    03:28
  • Useful Resources & Links
    00:08

  • Module Introduction
    01:38
  • Understanding Loops - Theory
    02:55
  • Creating a "for" Loop
    03:02
  • Creating a "while" Loop
    03:33
  • Closing the REPL
    00:15
  • Understanding Conditionals - Theory
    02:01
  • Adding "if-else" to our Blockchain
    07:45
  • Working with "elif"
    03:43
  • Understanding "break" & "continue"
    03:31
  • Improving our Code with Loops & Conditionals
    06:39
  • Understanding Boolean Operators - "is" & "in"
    03:37
  • The "not" Keyword
    01:17
  • Understanding "and" and "or"
    02:26
  • Grouping Conditionals
    03:22
  • What About "switch" in Python?
    00:41
  • Verifying our Blockchain
    13:10
  • Blockchain Theory: Understanding Blockchain Verification
    00:50
  • Using Conditions inside the "while" Loop
    01:56
  • Using "else" in Loops
    02:07
  • Adding the "range" Function
    07:09
  • Time to Practice - Loops & Conditionals
    1 question
  • Wrap Up
    02:31
  • Useful Resources & Links
    00:02

  • Module Introduction
    02:50
  • Understanding the Required Data Structure for our Blockchain
    07:03
  • Working with Iterables
    05:02
  • Choosing the Right Datastructure
    02:55
  • Transactions with Dictionaries & Tuples
    07:46
  • Blockchain Theory: Understanding Transactions
    00:27
  • Unpacking the Tuple
    03:20
  • Mining Blocks
    06:17
  • Hashing Previous Blocks
    06:23
  • Understanding List Comprehensions
    05:48
  • And What are Dict Comprehensions?
    01:39
  • Combining List Comprehensions & "if"
    02:53
  • Improving the Blockchain Validation Logic
    08:20
  • Managing a List of Participants in the Blockchain
    03:33
  • Calculating Balances
    07:46
  • Rewarding the Miners of our Blockchain
    03:23
  • Verifying Transactions
    05:45
  • Understanding Reference vs Value Copying
    07:07
  • Working with the Range Selector
    05:42
  • Understanding Shallow vs Deep Copies
    02:42
  • Comparing "is" & "=="
    01:36
  • Diving Deeper Into Iterable Methods
    07:27
  • Understanding the "all" & "any" Functions
    07:35
  • Comparing Iterables
    06:46
  • Time to Practice - Complex Datastructures
    1 question
  • Wrap Up
    03:17
  • Useful Resources & Links
    00:01

  • Module Introduction
    01:30
  • Comparing Strings & Lists
    03:57
  • Understanding the "format" Method
    08:11
  • Escaping Characters
    01:47
  • Formatting Strings Conveniently with "f"
    01:27
  • Adding String Formatting to our Project
    02:00
  • Understanding the "map" Function
    02:53
  • Working with Lambda Functions
    02:13
  • Reducing Lists
    07:40
  • Unpacking Function Arguments
    06:32
  • Time to Practice - Functions & Strings
    1 question
  • Fixing a Bug
    04:13
  • Wrap Up
    01:30
  • Useful Resources & Links
    00:03

  • Module Introduction
    01:43
  • Exploring the Python Standard Library
    02:12
  • Importing Packages - Theory
    04:18
  • Importing "hashlib" to Create a Unique Hash
    07:14
  • Blockchain Theory: Understanding Hashes
    01:02
  • Using Other Import Syntaxes
    01:47
  • The "Proof of Work"
    06:53
  • Blockchain Theory: Understanding the "Proof of Work"
    02:27
  • Adding the Proof of Work to our Blockchain
    05:48
  • Including the Proof of Work in our Mining Function
    07:49
  • Fixing a Hash Order Fault
    06:22
  • Splitting Up our Code
    04:33
  • Time to Practice - The Standard Library
    1 question
  • Wrap Up
    02:02
  • Useful Resources & Links
    00:01

  • Module Introduction
    01:44
  • Handling File Access
    05:44
  • Reading Data From a File
    02:33
  • Reading Multi-Line Content
    05:52
  • Using the "with" Block Statement
    02:57
  • Adding File Access to our Blockchain
    08:39
  • Converting Strings Into Python Objects
    16:01
  • Storing Data with Pickle
    06:05
  • Comparing Pickle & JSON
    01:05
  • Changing the Project Back to JSON
    02:30
  • Why we need Proper Error Handling
    00:46
  • Time to Practice - Working with Files
    1 question
  • Wrap Up
    01:17
  • Useful Resources & Links
    00:03

  • Module Introduction
    00:57
  • Finding Logical Errors with the Debugger
    05:53
  • Finding Syntax Errors
    01:40
  • Using "try" to Find Runtime Errors
    04:33
  • Which Errors Should you Handle?
    03:01
  • Adding Error Handlers to our Blockchain
    02:32
  • Handling Empty File Errors
    00:15
  • Wrap Up
    01:49
  • Useful Resources & Links
    00:02

  • Module Introduction
    01:13
  • What is Object Oriented Programming?
    02:12
  • Understanding Classes
    01:24
  • Creating a Class
    05:09
  • Comparing Classes, Instances & Dictionaries
    02:44
  • Understanding Class Attributes
    03:37
  • Constructor & Instance Attributes
    04:21
  • Printing Classes with Special Methods
    06:04
  • Private & Public Attributes
    04:39
  • Understanding Inheritance
    08:46
  • Planning Blockchain Classes
    01:32
  • Adding a "Block" Class to the Blockchain
    11:07
  • An Issue with Default Arguments
    00:31
  • Saving Custom Class Objects via .json
    04:49
  • Adding a "Transaction" Class
    17:46
  • Inheritance in Action
    05:43
  • Adding a "Verification" Helper Class
    10:03
  • Initialising the "Node" Class
    04:51
  • Turning the Blockchain Into a Class
    07:30
  • Adding a "Node" Class
    11:11
  • Understanding "Instance" vs "Class" vs "Static Methods" & "Attributes"
    03:39
  • Using "Static" & "Class" Methods on the "Verification" Class
    03:44
  • Using Private Attributes in the Blockchain
    03:43
  • Properties vs Attributes
    05:20
  • Time to Practice - Object Oriented Programming
    1 question
  • Wrap Up
    02:15
  • Useful Resources & Links
    00:01

  • Module Introduction
    01:41
  • Creating Packages - Module Bundles
    04:40
  • The "pycache" Folder
    00:43
  • Module Docstrings
    00:51
  • Controlling Exports
    05:36
  • Understanding Execution Context & "__name__"
    04:11
  • Why we Need a Private & Public Key Transaction Protection
    04:25
  • Using Anaconda to Install Third Party Packages
    06:23
  • Using Virtual Environments
    00:46
  • Use Pycryptodome instead of PyCrypto
    00:10
  • Generating Keys with a Third Party Package
    06:21
  • Connecting the Node & the Wallet
    06:15
  • Generating Keys on the Node
    04:06
  • Saving & Loading Keys to Files
    08:24
  • Creating Transaction Signatures
    06:24
  • Adding a Signature to our Transactions
    02:42
  • Verifying Signatures
    06:49
  • Improving the Verification Logic
    05:41
  • Wrap Up
    01:21
  • Useful Resources & Links
    00:02

Requirements

  • NO prior programming language is required
  • You can use whatever operating system you want - macOS, Linux or Windows: It's all covered

Description

Want to learn Python "on the job" whilst building an exciting course project? This course is for you!

This is a highly practice-oriented Python course that teaches you Python from scratch - no prior programming experience required!

Python is probably THE most trending programming language you can learn these days!

It's very popular because it's easy to learn and use, runs on all operating systems and allows you to build a broad variety of programs: Be that web applications, desktop applications, utility scripts or using it for data science and machine learning.

In this course, you'll learn Python from scratch - and you'll do so whilst building your own Blockchain and Cryptocurrency. These are of course also highly trending topics and not a lot of people understand what a Blockchain really is. As a nice side-effect, you will know how a Blockchain works once you completed this course. It's an exciting course project that allows you to learn and apply Python to something you know and you can use.

Why Python?

As written above, Python is both easy-to-use and extremely versatile and powerful at the same time. Certainly not the worst combination. If you check it on Google trends (and compare it to other programming languages), you'll see that it's very popular these days.

It's being used by almost any important company - be that Google, Amazon or Facebook. It's used to run web applications, scripts, desktop programs and machine learning algorithms. This course sets the basics for all these use-cases!

Why Blockchain?

I believe that you learn something best if you directly apply it to a real-world project. And the Blockchain technology is an exciting trend which is there to stay. In this course, you'll learn a lot about the core concepts of the Blockchain and you'll see how Python can be used for the many aspects that make up a Blockchain and Cryptocurrency.

In my opinion, a perfect course project is challenging, interesting, something you know from real-life but also not overly complex. And that's all the case for the Blockchain! It poses some nice challenges where a lot of different Python features can be used to overcome them. It also is something we hear about all the time and yet no one knows how it works. And we can dive into the core Blockchain concepts without spending 100+ hours working on it. 

Who's teaching you?

My name is Maximilian Schwarzmüller and I'm a freelance developer. My focus is on web development but I've been working with Python for many years. It's actually one of the first languages I started with when I was 13. I'm the creator of many 5 star bestseller courses here on Udemy and I love diving into new technologies. That's why I had to dive into this whole Blockchain thing when it became more popular and why I chose it as a project for this course.

I can't wait to welcome you on board of this course and I hope you'll enjoy it just as much as I did creating it! :-)

What's in the course?

Great question! Here's a brief summary:

  • A summary of Python and the Blockchain technology

  • All the base Python syntax you need to know (variables, operators, functions, ...)

  • Loops and conditional statements

  • More complex data structures like tuples or dictionaries

  • A closer look at built-in functions and the standard library Python ships with

  • String manipulation

  • How to work with files

  • Error handling

  • Debugging

  • Object-oriented programming with classes and inheritance

  • Internal & external modules (packages)

  • How to spin up an Http server with the Flask package

  • Handling Http requests (sending & receiving)

  • And more!

What are the course prerequisites?

  • NO prior programming knowledge is required

  • Very basic knowledge about how a computer works will help you though (but can also be built up whilst you're going through the course)

Is this course for you?

It's for you if ...

  • You want to get into programming => Python is a great "first language" since it's easy to learn and very versatile

  • You want to broaden your horizon => Are you a web developer? Want to learn something new? Here you go!

  • You're interested in Python for web development => This course will teach you Python in general but there are two modules where we'll also dive into web development a bit

  • You're interested in the Blockchain technology => You'll learn the core concepts of it as a side-effect of this course!

  • You know Python but want to practice it => The course project is challenging and taken from real-life - there probably is no better practice

Does that sound good to you? I'd be honoured to welcome you in this course! :-)

Who this course is for:

  • Anyone interested in learning Python and building a real project with it
  • Anyone who's interested in learning about the core internals of a blockchain
  • Beginner developers who want to dive into one of the most trending and popular programming languages

Featured review

Ján Pivarník
Ján Pivarník
31 courses
22 reviews
Rating: 5.0 out of 5a year ago
I love all your courses, I had troubles to follow course when we introduced broadcasting and fix all error and maybe unittests was topic which I missed here, but you have exceptional ability to explain complex things easily and I can say that my understanding of blockchain improved significantly after this course.

Instructors

Academind by Maximilian Schwarzmüller
Online Education
Academind by Maximilian Schwarzmüller
  • 4.7 Instructor Rating
  • 333,168 Reviews
  • 1,392,320 Students
  • 26 Courses

Bundling the courses and know how of successful instructors, Academind strives to deliver high quality online education. 

Online Education, Real-Life Success - that's what Academind stands for. Learn topics like web development, data analyses and more in a fun and engaging way.

Currently, you can find courses published by Maximilian Schwarzmüller and Manuel Lorenz, more instructors to come!

Keep learning!

Maximilian Schwarzmüller
Professional Web Developer and Instructor
Maximilian Schwarzmüller
  • 4.7 Instructor Rating
  • 594,292 Reviews
  • 1,412,194 Students
  • 36 Courses

Experience as (Web) Developer

Starting out at the age of 13 I never stopped learning new programming skills and languages. Early I started creating websites for friends and just for fun as well. Besides web development I also explored Python and other non-web-only languages. This passion has since lasted and lead to my decision of working as a freelance web developer and consultant. The success and fun I have in this job is immense and really keeps that passion burningly alive.

Starting web development on the backend (PHP with Laravel, NodeJS, Python) I also became more and more of a frontend developer using modern frameworks like React, Angular or VueJS in a lot of projects. I love both worlds nowadays!

As a self-taught developer I had the chance to broaden my horizon by studying Business Administration where I hold a Master's degree. That enabled me to work in a major strategy consultancy as well as a bank. While learning, that I enjoy development more than these fields, the time in this sector greatly improved my overall experience and skills.

Experience as Instructor

As a self-taught professional I really know the hard parts and the difficult topics when learning new or improving on already-known languages. This background and experience enables me to focus on the most relevant key concepts and topics. My track record of many 5-star rated courses, more than 1,000,000 students on Udemy as well as a successful YouTube channel is the best proof for that.

Whether working as development instructor or teaching Business Administration I always received great feedback. The most rewarding experience is to see how people find new, better jobs, build awesome web applications, acquire amazing projects or simply enjoy their hobby with the help of my content.

Together with Manuel Lorenz, I founded Academind to offer the best possible learning experience to our more than 1,000,000 students.

  • Udemy for Business
  • Teach on Udemy
  • Get the app
  • About us
  • Contact us
  • Careers
  • Blog
  • Help and Support
  • Affiliate
  • Impressum Kontakt
  • Terms
  • Privacy policy
  • Cookie settings
  • Sitemap
  • Featured courses
Udemy
© 2021 Udemy, Inc.