Skip to content

This GitHub repository is for storing Python programming assignments, with clear documentation and organized folder structure for easy access and submission

Notifications You must be signed in to change notification settings

nabin2004/Complete-Python-and-Interview-Preparation

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 

Repository files navigation

Python Programming Syllabus tracker

Description:

Section 1: Introduction to Python Basics

  • Introduction to the Course

    • Course overview
    • Setting expectations
  • Variables and Printing

    • Basics of variables
    • Printing in Python
    • Calculating the remainder of a division
    • Exercise: Variables and numbers
    • Solution: Variables and numbers
  • Python Strings and Formatting

    • Working with strings
    • String formatting
    • Getting user input
    • Exercise: Communicating with users
    • Solution: Communicating with users
  • Booleans and Comparisons

    • Understanding booleans
    • Logical operators (and and or)
    • Comparisons in Python
    • Exercise: Nearby friends
    • Solution: Nearby friends
  • Lists, Tuples, and Sets

    • Introduction to lists
    • Tuples and sets in Python
    • Advanced set operations
    • Exercise: Working with dictionaries
    • Solution: Working with dictionaries
  • Python Dictionaries

    • Overview of dictionaries
    • Length and sum operations
    • Exercise: Dictionaries
    • Solution: Dictionaries
    • Joining a list
    • Conclusion and Python Fundamentals Cheatsheet

Section 2: Control Flow and Loops in Python

  • If Statements in Python

    • Introduction to conditional statements
    • Handling multiple conditions
    • Exercise: Simple text menu
    • Solution: Simple text menu
  • Loops in Python

    • While loops
    • For loops
    • Break and continue statements
    • List slicing and comprehension
    • Exercise: FizzBuzz
    • Solution: FizzBuzz
  • Advanced Loop Concepts

    • The else keyword with loops
    • Finding prime numbers with loops
    • List comprehension and slicing
    • Functions in Python
    • Introduction to arguments and parameters
    • Return values and default parameters
    • Lambda functions and first-class functions
    • Advanced functions in Python
  • Setting Up Python Environment

    • Installing Python
    • Setting up PyCharm
    • Creating a PyCharm project

Section 3: Object-Oriented Programming (OOP) in Python

  • Introduction to OOP with Python

    • Basics of OOP
    • Exercise: Your first Python class
    • Solution: Your first Python class
  • Advanced OOP Concepts

    • More about classes and objects
    • Inheritance and decorators
    • Magic methods in Python
    • Exercise: Magic methods in Python
    • Solution: Magic methods in Python
    • @classmethod and @staticmethod
    • More examples of @classmethod and @staticmethod

Section 4: Handling Errors in Python

  • Intro to Errors in Python

    • Understanding errors
    • Built-in errors in Python
    • Raising and handling errors
    • Exercise: Raising an error
    • Solution: Raising an error
  • Dealing with Python Errors

    • Creating custom errors
    • Handling errors with try-except-finally
    • Debugging with PyCharm
    • Advanced error handling in Python
  • File Operations in Python

    • Working with files
    • Copying files and building a quiz system
    • CSV files and using the csv module
    • JSON files and a CSV to JSON converter
    • Using the with syntax in Python
    • Importing modules and relative imports
    • Exercise: Importing modules
    • Solution: Importing modules

Section 5: Milestone Projects and Advanced Python Concepts

  • Milestone Project 1

    • Overview and implementation
    • Introduction to databases with SQLite
    • Creating a table and inserting data
    • SELECT, UPDATE, DELETE operations
    • Filtering data with WHERE clause
    • Finishing the Milestone Project
  • Typing in Python

    • Understanding type hints
    • Using type hints in Python
  • Generators in Python

    • Introduction to generators
    • Exercise: Prime number generator
    • Solution: Prime number generator
    • Generator classes and iterators
    • Coding a generator class
    • Iterables and functions like filter and map
    • Section review and further exploration
  • Mutability in Python

    • Understanding mutability
    • Argument mutability
    • Default values and argument unpacking
    • Queues and interesting Python collections
    • Exercise: Python collections
    • Solution: Python collections
  • Dates, Times, and Regular Expressions

    • Working with timezones
    • Dates and time in Python
    • Timing code execution
    • Introduction to regular expressions
    • Examples and usage of regex in Python
    • Exercise: Secure file names using regex
    • Solution: Secure file names using regex
    • Introduction to logging in Python
    • Higher-order functions and itertools module

Section 6: Web Scraping with Python

  • HTML Parsing with BeautifulSoup

    • Understanding HTML structure
    • Parsing HTML with BeautifulSoup
    • Structuring parsing programs
    • Scraping a website with Python
  • Milestone Project 2

    • Overview and implementation
    • Storing data in files
    • Using JSON for data storage
    • Extracting data from websites
    • Exercise: Web scraping project
    • Solution: Web scraping project
  • Introduction to APIs and REST

    • Overview of APIs
    • Working with REST APIs
    • Making API requests with requests module
    • Exercise: Working with APIs
    • Solution: Working with APIs
    • Introduction to Web Development with Flask
    • Setting up Flask and creating a basic route

Section 7: Web Development with Flask

  • Flask Basics and Templates

    • Introduction to Flask
    • Setting up a basic Flask app
    • Flask templates and template inheritance
    • Exercise: Flask templates
    • Solution: Flask templates
    • Flask routing and redirecting
    • Serving static files and creating links
    • Using Bootstrap for styling
  • Database Setup and Flask-SQLAlchemy

    • Introduction to databases in web development
    • Setting up Flask-SQLAlchemy
    • Creating models and tables
    • Database relationships
    • Adding records and querying the database
  • Flask Web Forms and User Authentication

    • Introduction to web forms
    • Setting up Flask-WTF
    • Flask form handling and CSRF protection
    • User authentication with Flask-Login
    • Adding user authentication to the Flask app
    • Role-based access control (RBAC)
    • Customizing Flask-Login
    • Logging out and restricting views
  • Adding AJAX to Flask Application

    • Overview of AJAX
    • Adding AJAX to a Flask application
    • Handling JSON data in Flask
    • Incorporating AJAX into Flask web forms
    • Dynamic content loading with AJAX
    • Exercise: Flask web forms with AJAX
    • Solution: Flask web forms with AJAX
  • Deploying Flask Applications

    • Deployment options for Flask
    • Deploying a Flask app on Heroku
    • Containerizing a Flask app with Docker
    • Running Flask app in a container
    • Exercise: Flask app deployment
    • Solution: Flask app deployment
  • Advanced Flask Topics

    • Flask extensions for different functionalities
    • Blueprinting and structuring larger applications
    • Testing Flask applications
    • Test-driven development (TDD)
    • Continuous Integration (CI) with GitHub Actions

Section 8: GUI Development with Tkinter

  • Setting up Tkinter
    • Installing and configuring Tkinter
    • Creating a basic Tkinter application
    • Using labels, fields, and frames
    • Starting a text editor project
    • Adding menus, saving, and opening files

Section 9: Software Testing and Algorithms

  • Introduction to Software Testing

    • Basics of testing functions and classes
    • Testing for errors and multiplication functions
    • Writing tests for classes and external libraries
  • Algorithms and Big-O Notation

    • Overview of algorithms and complexity
    • Binary search and binary trees
    • Traversal and insertion in binary trees
    • Deleting nodes and testing the binary tree

Section 10: Python Libraries and Tools

  • Overview of Python Libraries
    • Introduction to popular Python libraries
    • Using pylint and yapf for code formatting
    • Sending emails with smtplib and Mailgun
    • Creating reusable Mailgun library
    • Overview of IDE setup

Section 11: Course Conclusion

  • Recap and Thank You
    • Summary of the course
    • Thank you for taking the course
    • Further reading and resources

About

This GitHub repository is for storing Python programming assignments, with clear documentation and organized folder structure for easy access and submission

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published