Complete Python Programming Course

Python is a powerful and flexible object-oriented scripting language that is designed for ease of use and enhanced productivity. In this training course, you gain the skills to achieve rapid development cycles, faster time-to-market, and lower cost of maintenance by developing applications using Python’s language features, standard library modules, and third-party software packages. Learn Python for Beginners for  Machine Learning, Programming, Data Science, Coding & More

  • Introduction To The Course

  • jupyter notebook using Anaconda

  • Python for Window

  • Installing jupyter notebook using Anaconda for Windows

  • Python for Mac

  • Install jupyter notebook using for Mac

  • Python for Linux

  • Install jupyter notebook using for Linux

  • Configuring jupyter notebook using - WINDOWS, MAC and LINUX

  • Further configuration of jupyter notebook using.

  • Basic Linux Command

  • Introduction

  • Our First Python Program

  • Printing in Python

  • Printing text

  • Printing the result of a calculation

  • Strings in Python

  • The Escape Character

  • Printing tabs

  • More on Escape Characters in Strings

  • Variables and Types

  • Python is a Strongly Typed Language

  • Numeric Data Types in Python

  • Numeric Operator

  • Expressions

  • Integer division

  • Operator Precedence

  • The str String Data Type

  • Negative Indexing in Strings

  • Slicing

  • Slicing with Negative Numbers

  • Using a Step in a Slice

  • Slicing Backwards

  • Challenge Solution and Slicing Idioms

  • String Operators
  • String Replacement Fields

  • String Formatting

  • f-strings

  • Python 2 String Interpolation

  • Section Summary

  • The Basics of Python

  • Introduction to Blocks and Statements

  • if Statements

  • elif

  • Using a Debugger in IntelliJ or Pycharm

  • More on if, elif and else

  • if, elif, and else in the Debugger

  • Using if with strings

  • Simple condition

  • Adding a Second Guess

  • Conditional Operators

  • Challenge Solution

  • Using and, or, in Conditions

  • Simplify Chained Comparison

  • Boolean Expression True and False

  • Truthy Values

  • in and not in

  • if Challenge

  • Solution to if Challenge

  • for loops

  • Stepping through a for loop

  • for loops Extracting Values from User Input

  • Extracting capitals

  • Iterating Over a Range

  • For loop

  • More About Ranges

  • For loop with step

  • Nested for loops

  • continue

  • break

  • Initialising Variables and None

  • while loops

  • More on while loops

  • Break in a while loop

  • Break

  • Continue

  • The Random Module and Import

  • Challenge Solution

  • Binary Search

  • Hi Lo Game

  • Pass Statement and Complete the Hi Lo Game

  • Testing the Hi Lo Game

  • Augmented Assignment

  • augmented assignment in a loop

  • PEP8: The Python Style Guide

  • Refactoring Code

  • else in a loop

  • else in the Hi Lo Game

  • Conditional Debugging

  • Another else Example

  • Section Summary and Challenge

  • Section Challenge Solution

  • Optional Extra Challenge Solution

  • Changing the Condition

  • Flow Control Quiz

  • Introduction to Sequence Types

  • Lists

  • Immutable Objects

  • Mutable Objects

  • Binding Multiple Names to a List

  • Common Sequence Operations

  • Operations on Mutable Sequences

  • Appending to a List

  • Mini Challenge Solution

  • Iterating Over a List

  • The enumerate Function

  • Improving our Code

  • Adding items to lists

  • Removing Items from a List

  • Sorting Lists

  • Built-in Functions

  • Sorting Things

  • Case-Insensitive Sorting

  • Creating Lists

  • Replacing a slice

  • Deleting Items from a List

  • Safely removing values from a list

  • Removing the High Values

  • Test, Test and Test. Then Test Again!

  • Testing the Program

  • Removing Items from a List Backwards

  • The Reversed Function

  • Algorithms Performance

  • Summary so far

  • Nested Lists & Code Style

  • Processing Nested Lists

  • Solution to nospam Challenge

  • Function Signatures

  • print revisited

  • The join Method

  • The split Method

  • Solution to Mini Challenge

  • The Magical Adder

  • Tuples

  • Tuples are Immutable

  • Unpacking a Tuple

  • Practical uses for Unpacking Tuples

  • More Unpacking

  • Nested Tuples and Lists

  • Solution to Unpacking Challenge

  • Nesting Further

  • Nested Data Structures

  • Nested Indexing

  • Nested indexing

  • Simple Jukebox - Demonstration

  • Simple Jukebox - Importing Data

  • Simple Jukebox - The Code

  • Constants in Python

  • Finishing the Code

  • Challenge

  • Challenge Solution

  • Summary

  • Introduction

  • Defining a function

  • Program flow when calling a function

  • Parameters and arguments

  • Debugging with parameters

  • Palindromes

  • Palindrome challenge solution

  • Sentence challenge solution

  • Functions calling functions

  • Returning values

  • get_integer Challenge solution

  • Sum even or odd numbers in a range

  • Returning None

  • Functions that perform actions

  • Handling invalid arguments

  • width challenge solution

  • Default parameter values

  • Keyword arguments

  • Docstrings

  • Writing a Docstring

  • How professional is that!

  • Solution to Docstrings challenge

  • Fibonacci Numbers

  • Writing a fibonacci function

  • Function annotations and type hints

  • Function annotations with default values

  • Solution to banner_text Docstring challenge

  • A history lesson

  • Printing in colour

  • Running your program like a user

  • Windows Only - Installing pre-release version of colorama

  • colorama module and virtual environments

  • Activating a virtual environment

  • A function to test our HiLo game

  • Counting correct guesses

  • Fizz Buzz

  • Playing Fizz Buzz

  • Playing Fizz Buzz Solution

  • Factorial function

  • *args

  • colour_print with multiple arguments

  • Rules for variable number of arguments

  • Defining different parameter types

  • Variable number of arguments

  • Section Summary

  • Introduction

  • What is a dictionary?

  • Iterating over a dictionary

  • Adding items to a dictionary

  • Changing values in a dictionary

  • Removing items from a dictionary

  • Using `in` with a dictionary

  • Dictionary menu challenge solution

  • Using a list with a dictionary

  • Adding items to a dictionary

  • Smart fridge

  • What's for tea?

  • Using several dictionaries together

  • Checking the pantry

  • Checking quantities - choosing a data structure

  • Checking quantities - the code

  • Solution: Create a shopping list challenge

  • Wrong decisions don't have to be fatal

  • The setdefault method

  • Character counter

  • APIs and a mobile phone demo

  • The `dict` documentation

  • The remaining `dict` methods

  • The dict `update` method

  • The dict `values` method

  • References to mutable objects

  • Shallow copy

  • Shallow copy step-by-step

  • Deep copy

  • Simple deep copy solution

  • Hash functions

  • A really bad hashing function

  • Hash tables

  • Completing our simple dictionary implementation

  • Hash functions and security

  • hashlib, the secure hash module

  • Introduction to Android-Tim

  • Introduction to sets

  • Python sets

  • Implications of sets being unordered

  • set membership

  • Testing set membership is fast

  • Adding items to a set

  • Using a set to remove duplicate values

  • Deleting items from a set

  • The `discard` method

  • The `remove` method

  • The `pop` method

  • set union

  • Set union in practice

  • Union update

  • Advantage of the set operation methods over the operators

  • Set intersection

  • Set intersection in practice

  • Intersection update

  • Set difference

  • Set difference in practice

  • Difference

  • Set symmetric difference

  • subsets and supersets

  • subsets and supersets in Python

  • Practical application of subsets and supersets

  • Summary

  • Introduction

  • Files and directories

  • Introduction to the command prompt or terminal

  • Paths

  • Text files

  • Reading from a text file

  • Opening a file using `with`

  • read, readline and readlines

  • strip, lstrip and rstrip

  • removeprefix and removesuffix in Python 3.9

  • Parsing data in a text file

  • Working with text data

  • Solution to capital city challenge

  • Dictionary values with multiple keys

  • Printing data to a text file

  • Writing data to a text file

  • File modes

  • Unicode – a brief history

  • Unicode in Python

  • File encodings

  • Serializing data using JSON

  • Limitations of JSON

  • Practical application - parsing JSON data

  • Practical application - parsing JSON data from the internet

  • The CSV format

  • Reading a CSV file

  • quoting in a CSV file

  • Sniffer and Dialect

  • CSV Dialect

  • Writing a CSV file

  • The csv DictReader

  • Solution to DictReader challenge

  • Field names with DictReader and DictWriter

  • Reading and writing multiple files

  • The csv DictWriter

  • The `zip` function

  • Reading and writing to the same text file

  • Solution to parsing functions challenge

  • The record_invoice function

  • Using the `record_invoice` function

  • seek and tell

  • Improving the `record_invoice` function

  • Summary of working with text files

  • Working with binary files - bytes and bytearray

  • Reading a bitmap file

  • Little endian and big endian

  • Making sense of binary data

  • Reading tags in an mp3 file

  • The ID3v2 specification

  • The code

  • Filling in the blanks

  • Extracting images

  • Testing our read_id3 program

Checking the hash of a file

  • Summary of working with binary files

  • End of Remaster

  • Introduction to the Section

  • Modules and import

  • The standard Python library

  • WebBrowser Module

  • Time and DateTime in Python

  • Time (Continued) and Challenge.

  • Timezones

  • Check Path In Windows

  • Check Path on a Mac

  • FAQ: Installing packages in IntelliJ IDEA and PyCharm

  • Installing the pytz module (Windows/Mac/Linux)

  • Using Timezones

Preview

  • More on Timezones

  • Timezone Challenge

  • Introduction to Tkinter

  • TkInter - Pack Geometry Manager

  • TkInter - Grid Geometry Manager

  • Advanced GUI Example Part 1

Preview17:13

  • Advanced GUI Example Part 2

  • Advanced GUI Example Part 3

  • Tkinter Challenge

  • Functions in Python

  • Functions Part 2

  • Functions Part 3

Preview

  • Parabola - More on Functions

  • Scope in Functions

  • Fix Function and Draw Circles

  • Enhanced Circles and Challenge

Preview

  • Blackjack Setup

Preview

  • Load Cards

  • Deal Card

  • Global Variables

  • Global Keyword

  • Test Blackjack Game

  • Blackjack Challenge

  • Importing Techniques

  • Underscores in Python code

  • Namespaces, more on Scope and Recursion

  • Recursion with OS Module and Filesystem and Nonlocal keyword

  • Nonlocal keyword, Free and LEGB

  • Object Orientated Programming and Classes

  • Instances, Constructors, Self and more

  • Class Attributes

  • Methods Part 1

  • Methods Part 2

  • Non Public and Mangling

  • DocStrings and Raw Literals

  • Album class and More on DocStrings

  • Artist class and import Albums

  • Load data and Write Checkfile

  • Compare Files and Algorithm Flowcharts

  • Implement Revised Load_Data Algorithm

  • Write OOP Version

  • Getters and Properties

  • Remove Circular References Challenge

  • Getters and Setters

  • Data Attributes and Properties

  • Alternate Syntax for Properties

  • Inheritance

  • Subclasses and Overloading

  • Calling Super Methods

  • Changing Behavior of Methods

  • Overriding Methods

  • Inheritance Challenge

  • Polymorphism

  • Duck Test

  • Composition

  • Composition Continued

  • Test Code and Challenge

  • Aggregation

  • Introduction to Databases

  • Database Terminology

  • Sqlite3 Install on Windows

  • Sqlite3 Install on a Mac

  • SQLite3 Install on Ubuntu Linux

  • Introduction to SQLite

  • More with SQL using SQLite

  • Querying data with Sqlite

  • Order by and Joins

  • More complex Joins

  • Wildcards and Views

  • Housekeeping and the Challenge

  • SQL in Python

  • Connections, Cursors and Transactions

  • SQL Injection Attacks

  • Placeholders and Parameter Substitution

  • Exceptions

  • Exceptions Challenge

  • Exceptions Continued

  • Raising Exceptions

  • More on Exceptions

  • Exceptions and TODO

  • Rolling back Transactions

  • Adding Database code to the Account Class

  • GUI Database Editing Overview

  • Ultimate Edition Database View

  • Problems with Community Edition database plugin

  • Update Deposit and Withdrawal Methods

  • Displaying Time in Different Timezones

  • SQLite3 strftime Function

  • Challenge

  • Problems Storing Timezones

  • Rolling Back Transactions

  • Simple Database Browser

  • Scrollbars

  • Star Args

  • Kwargs

  • More on KWArgs

  • Scrollable Listbox

  • Populating a Listbox from a Database

  • Show Songs from Album

  • The DataListbox Class Code

  • Linking our DataListBoxes

  • Linking our DataListBoxes Continued
  • DataListbox Challenge

  • Introduction

  • Generators and Yield

  • Next and Ranges

  • Generator Examples - Fibonacci numbers and Calculating Pi

  • The os.walk Generator

  • Searching the Filesystem

  • Reading Mp3 Tags

  • List Comprehensions

  • List Comprehensions and Side-Effects

  • Challenge Solutions

  • Conditional Comprehensions

  • Conditional Expressions

  • Challenges

  • Challenge 1 Solution

  • Challenge 2 Solution

  • Nested Comprehensions

  • Nested Comprehensions Challenge

  • The timeit Module

  • More on timeit

  • timeit Continued and Challenge

  • timeit Challenge

  • Map Intro

  • Map Challenge Completion

  • The Filter Function

  • The Reduce Function

  • any and all

  • Named Tuples

  • any and all with Comprehensions

Lambda expressions

  • Using lambdas

  • More lambdas

  • Conditional expressions

  • Conditional expression challenge

  • A lambda with a conditional expression

  • A toy calculator

  • A lambda in a loop

  • Methods of some state-carrying object

  • Frame makes a good base class

  • `eval` is dangerous!

  • Control all input to `eval`

  • Mitigating the danger of `eval`

  • Functions are objects

  • Big O notation

  • Big O tables and graphs

  • Bubble sort

  • Big O of Bubble sort, and an optimisation

  • Big O of our improved Bubble sort

  • Bubble sort optimisation

  • Best, worst and average cases
  • Big O summaryy


  • Introduction to the section

  • The turtle module

  • Importing specific objects

  • Namespaces and global scope

  • Local scope

  • Builtins

  • Nested functions

  • Enclosing scope

  • A little white lie, or an oversimplification

  • Changing the value of a free variable

  • Investigating changes to a free variable

  • The `nonlocal` keyword

  • The `global` keyword

  • Importing and the global namespace

  • I nearly forgot

  • import *

  • if name == '__main__':

  • An optimisation you may see in code

  • The webbrowser module

  • Dates and times in Python

  • The datetime module's date class

  • `timedelta` objects

  • The datetime module's time class

  • `datetime.date`, and another note about importing

  • Aware and naive times

  • zoneinfo backport

  • timezone objects

  • Timezone challenge solution

  • Some behaviour you might not expect

  • Perform arithmetic in UTC (most of the time)

Instructors

Chotan Chandra Dash

Senior Programmer
  • Duration 3 Month
  • Price 12,000 BDT