Skip to content

A python notes repository for my students and interns.

License

Notifications You must be signed in to change notification settings

ghimiresdp/python-notes

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Python Notes

A repository for Python course notes, examples, and lab exercises targeted to my students and interns.

You can clone or fork the repository and review the course contents, examples, and attend exercises.

Course Difficulty Level

  • Chapter 1 - 10: Easy
  • Chapter 11 - 20: Medium

Course Contents (Links will be updated accordingly)

  1. Fundamentals of Python

  2. Variables, basic data type and operations

  3. Advanced Data Types

  4. Decision Making

  5. Loops, Pattern Generation, and Comprehension

  6. Functions

  7. Classes

  8. Python Modules and packages

  9. File I/O

    • open() function
    • close() method
    • write() method
    • read() method
    • with keyword
  10. Exceptions and Exception Handling

    • Introduction to Exceptions in Python
    • Standard Errors
    • try, except keyword
    • try except else
    • finally keyword
    • raise keyword
    • User Defined Exceptions
    • Total
  11. Python Package Management with PIP

  12. Virtual Environments

  13. Python Advanced Functions

  14. Regular Expressions (REGEX)

  15. Advanced Data Structures

  16. Decorators

  17. Mixins

  18. http module

  19. requests library

  20. Advanced Type hinting

Folder Structure

The repository has its folder structure as shown in example below:

python-notes
├── LICENSE
├── README.md
├── c01_basics
│   ├── Chapter 1 Basics.md
│   ├── README.md
│   ├── code
│   │   ├── c0101_hello_world.py
│   │   └── c0102_comments.py
│   └── quiz
│       ├── README.md
│       └── solution
│           ├── q0101.py
│           └── q0102.py
├── c02_...
├── c03_...
│

If you're directly cloning the repository, I suggest you to solve in the different branch than the main branch to avoid conflicts if the course content changes.

If you're forking, I suggest you not to make any changes in the main branch in your repository too so that you can pull and rebase future changes to your fork.

Pulling future changes for your forks

for pulling the future changes you can add new remote as upstream in your local repository with the commands below:

# step 1: add the upstream remote as git@github.com:ghimiresdp/python-notes.git
# step 2: pull from the upstream
# step 3: push to the origin

git remote add upstream git@github.com:ghimiresdp/python-notes.git
git pull upstream main
git push origin main