Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
Learning Path: Python: Guide to Become a Python Professional
Rating: 3.1 out of 5(33 ratings)
330 students

Learning Path: Python: Guide to Become a Python Professional

A journey from being a novice to a professional Python developer
Last updated 7/2017
English

What you'll learn

  • See the intricate details of the Python syntax and how to use it to your advantage
  • Learn to manipulate data effectively using built-in data structures
  • Get acquainted with advanced programming techniques in Python
  • Equip yourself with functional and statistical programming features
  • Take advantage of Python's metaprogramming and programmable syntax features
  • Understand how to handle high I/O loads with asynchronous I/O to get a smoother performance
  • Get familiar with Python’s metaprogramming and programmable syntax features
  • Learn the concepts of reactive programming and RxPy

Course content

4 sections172 lectures19h 43m total length
  • The Course Overview3:22
    This video provides an overview of the entire course.
  • Creating Meaningful Names and Using Variables11:37

    Choosing the correct name is essential to make our programs more readable and ease the process of designing software and applications. Complex names could lead to confusion. This video will guide you to select the appropriate names while designing an application.

  • Working with Large and Small Integers8:02

    Many programming languages make a distinction between integers, bytes, and long integers. Some languages include distinctions for signed versus unsigned integers. How do we map these concepts to Python? This video will walk you through these concepts in detail.

  • Choosing between Float, Decimal, and Fraction12:55

    Python offers us several ways to work with rational numbers and approximations of irrational numbers. We have three basic choices, which are Float, Decimal, and Fraction. With so many choices, when do we use each of these? This video will let you answer this question.

  • Choosing between True Division and Floor Division5:23

    This video will let you understand which division operator to use while converting numbers from one base to another

  • Rewriting an Immutable String8:56

    How can we rewrite an immutable string? This video will answer this question and show you how to work with strings in Python.

  • String Parsing with Regular Expressions6:14

    The easiest way to decompose a complex string is by generalizing the string into a pattern and then writing a regular expression that describes that pattern.This video will let you know how to do it in a smart way!

  • Building Complex Strings with “template”.format()6:12

    Creating complex strings is, in many ways, the polar opposite of parsing a complex string. Let’s dive into building a complex string.

  • Building Complex Strings from Lists of Characters4:44

    There’s another way of building complex strings, which is, from a list of characters. This video will walk you through the steps that let you build a complex string from a list of characters.

  • Using the Unicode Characters that aren't on Our Keyboards3:27

    Our Computers work a lot with Unicode, and sometimes, we are not aware how to use them. This video will let you know how to use Unicode and the internal operations on them.

  • Encoding Strings-Creating ASCII and UTF8 Bytes4:28
    How do we map Unicode characters to bytes for writing to a file or transmitting? This video will show you, how to achieve this goal.
  • Decoding Bytes, How to Get Proper Characters from Some Bytes2:33

    How can we work with files that aren't properly encoded? What do we do with files written in the ASCII encoding? How do we decode the characters from that stream of bytes? This video will answer all these queries.

  • Using Tuples of Items4:15
    How can we keep things, which are pairs, such as latitude and longitude, together? Let’s see how to do this!
  • Writing Python Script and Module Files7:48

    You need to write Python script files in order to do anything truly useful. How can we avoid syntax errors and be sure that our code matches what's in common use? This video will provide a resolution for these tasks.

  • Writing Long Lines of Code8:10

    There are many times when we need to write lines of code that are so long that they're very hard to read. How can we break long Python statements into more manageable pieces? Let’s explore this.

  • Including Descriptions and Documentation5:02

    When we have a useful script, we often need to leave notes for ourselves and others, on what it does, how it solves some particular problem, and when it should be used. This video contains a suggested outline so that the documentation will be reasonably complete.

  • Writing Better RST Markup in docstring4:03

    When we have a useful script, we often need to leave notes on what it does, how it works, and when it should be used. Many tools for producing documentation, including Docutils, work with RST markup. What RST features can we use to make our documentation more readable? Let’s dive into it!

  • Designing Complex if…elif Chains4:43

    When designing a complex chain of if and else statements, we might miss some condition that got lost in the tangle of logic. Missing this will mean that our program will fail to work properly. How can we be sure we haven't missed something? This video is an answer to this question.

  • Designing a While Statement that Terminates Properly6:12

    There are a few situations, where we don't have the data until we get an input from the person. Let’s have a look at how we could implement a while statement in these conditions.

  • Avoiding a Potential Problem with Break Statements5:05

    What could you do when you have multiple break statements, each with its own condition. How can you minimize the problems created by having complex break conditions? Let’s get the answer for these questions.

  • Leveraging the Exception Matching Rules4:41
    How could we avoid confusion due to hierarchy if we're trying to handle detailed exceptions as well as generic exceptions? This video will give a few of the best exception matching rules.
  • Avoiding a Potential Problem With an Except:Clause2:05

    There are some common mistakes in exception handling. These can cause programs to become unresponsive. This video will show some common exception handling errors that we can avoid.

  • Chaining Exceptions with the Raise from Statement3:00
    In some cases, we may want to merge some seemingly unrelated exceptions into a single generic exception. What if we need to provide supporting details that amplify or extend the generic exception. We can do this by chaining from the generic exception to the root cause exception. Let’s see how to do this.
  • Managing a Context Using the With Statement5:24

    There are many instances where our scripts will be entangled with external resources. We'd like to isolate each entanglement so that we can be sure that the resource is acquired and released properly. Let’s see how we could achieve this goal.

  • Designing Functions with Optional Parameters11:02
    When we define a function, we often have a need for optional parameters. This allows us to write functions that are more flexible, and can be used in more situations. Let’s see how to design these functions.
  • Using Super Flexible Keyword Parameter5:16
    In some cases, we want to provide a simple, high-performance software implementation that can perform different calculations based on what's known and what's unknown. We don't want to use a general algebraic framework; we want to bundle the different solutions into a simple, efficient function. This video will demonstrate how you could do this.
  • Forcing Keyword-only Argument with the * Separator4:19

    What if you have a large number of positional parameters to a function? What would you do when it gets difficult to remember the required order for the parameters and there are too many parameters? Let’s answer these questions.

  • Writing Explicit Types on Function Parameters4:47

    Sometimes we want hints about the type of data involved, which can be used for testing and confirmation but don't interfere with performance. How can we provide meaningful type hints? Let’s see how we could achieve this goal.

  • Picking an Order for Parameters Based on Partial Functions6:15
    What could be done if we’d like to provide a way to make the common parameters slightly easier to work with than the uncommon parameters and to avoid having to repeat the parameters that are part of a larger context? Let’s have a resolution to this situation.
  • Writing Clear Documentation Strings4:13

    How can we clearly document what a function does? Can we provide examples? Let’s explore the answers to these questions.

  • Designing Recursive Functions Around Python’s Stack Limit4:22

    Let’s see how we could use a simple and smart way to design recursive functions to enhance the structure of our program.

  • Writing Reusable Script with the Script Library Switch4:30

    How can we import the functions or classes from a file without having the script start doing something? Let’s see how to do this.

  • Choosing a Data Structure9:38

    How do we choose which structure to use? What are the features of lists, sets, and dictionaries? Why do we have tuples and frozen sets? Let’s answer these questions with this video.

  • Building Lists – Literals, Appending, and Comprehensions9:58

    Can we control the formatting in our programs? Can we change the extra characters that are supplied? Let’s see how to do this.

  • Slicing And Dicing a List5:20
    There are many times when we want to pick items from a list. One of the most common kinds of processing is to treat the first item of a list as a special case. This leads to a kind of head-tail processing where we treat the head of a list differently from the items in the tail of a list. Let’s see how we can slice or dice a list.
  • Deleting From a List9:13

    There are many times when we want to remove items from a list collection. We might delete items from a list, and then process the items that are left over. Let’s see how to do this.

  • Reversing a Copy of a List4:54

    We generally want to display the values with the most significant digit first. This leads to a need of reversing the sequence of digits in a list. This video will let you do this in Python.

  • Using Set Methods and Operators8:37


    Can we control the formatting in our programs? Can we change the extra characters that are supplied? Let’s see how to do this.

  • Removing Items from a Set4:19
    Python gives us several ways to remove items from a set collection. Let’s dive into few of these.
  • Creating Dictionaries5:34

    Through this video, you will be able to use a dictionary when you have some key that we need to map to a given value along with some key operations like inserting and updating dictionaries.

  • Removing from Dictionaries4:16
    This video will show you how to define a service that works in a simulated environment with a single processing thread and avoid concurrency and multi-processing considerations.
  • Controlling the Order of the Dict Keys3:48
    What if we want to keep the keys in a given order so that the dictionary follows the structure of the source file? Let’s see how we could do this.
  • Handling Dictionaries and Sets in doctest Examples2:24

    How can we be sure our doctest examples really work? Let’s get the answer to this.

  • Understanding Variables, References, and Assignment3:23

    How do variables really work? What happens when we assign a mutable object to two variables? Let’s have the answer to these questions.

  • Making Shallow and Deep Copies of Objects5:46
    This video will walk you through different ways to break the connection that exists when two variables are references to the same underlying object
  • Avoiding Mutable Default Values for Function Parameters6:10

    This video will let you have a close look at the consequences of a mutable default value for a function parameter and how to avoid it.

  • Using Features of the print() Functions7:25
    Can we control the formatting in our programs? Can we change the extra characters that are supplied? Let’s see how to do this.
  • Using input() and getpass() for User Input8:39
    The environment variables are available through the os module. How can we have an application's configuration based on these OS-level settings? Let’s have a close look at this.
  • Debugging with “Format”.Format_Map(Vars())3:17
    There are some kinds of formatting options available in Python. What if we want more flexible output? Let’s see some amazing options for this, which are there for you in Python.
  • Using Argparse to Get Command-line Input6:57

    In some cases, we may want to get the user input from the OS command line without a lot of interaction. We'd prefer to parse the command-line argument values and either perform the processing or report an error. How do we parse argument values from the command line? Let’s start doing this with this video.

  • Using CMD for Creating Command-line Applications6:06
    There are several ways of creating interactive applications. Let’s see how we can prompt the user for input and then invoke a specific method of the class we provide.
  • Using the OS Environment Settings4:56

    The environment variables are available through the os module. How can we have an application's configuration based on these OS-level settings? Let’s have a close look at this.

Requirements

  • Basic programming knowledge is needed.

Description

If you are looking for a complete course on Python programming, then go for this Learning Path. Python is the preferred choice of developers, engineers, data scientists, and hobbyists everywhere. It is a great scripting language that can power your applications and provide speed, safety, and scalability.

We will begin this learning journey by understanding the basic concepts of Python such as statements and syntax along with using numbers, strings, and tuples. We will then explore various function definition techniques along with learning the basics of classes and objects.

Going ahead, we will understand the intermediate concepts such as functional and reactive programming in Python. We will also explore statistical programming and regression.

Next, you will uncover the advanced topics in Python, will learn to implement real-world test cases to your programs along with integrating different applications.

By the end of this Video Learning Path, you will become proficient in Python.   

About the Authors

Steven F. Lott has been programming since the 70s, when computers were large, expensive, and rare. As a contract software developer and architect, he has worked on hundreds of projects, from very small to very large. He's been using Python to solve business problems for over 10 years. He’s currently leveraging Python to implement microservices and ETL pipelines. His other titles with Packt Publishing include Python Essentials, Mastering Object-Oriented Python, Functional Python Programming, and Python for Secret Agents. Steven is currently a technomad who lives in various places on the east coast of the U.S.

Daniel Arbuckle gained his PhD in Computer Science from the University of Southern California. He has published numerous papers along with several books and video courses, and he is both a teacher of computer science and a professional programmer.

Who this course is for:

  • This Learning Path is for web developers, programmers, enterprise programmers, engineers, big data scientist, and so on. If you are a beginner, Modern Python Recipes will get you started. If you are experienced, it will expand your knowledge base. A basic knowledge of programming would help.