vorozhko / learning-advanced-python

Advanced python examples

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Advanced python examples

💻 In this project I will test my skills in different advanced programming areas using Python.

🥇 By the end of this excercise the project will contain Python examples in different programming areas.

🙂 The fun part that resulting code might look sometimes simple and at the same time solving advanced problem.

Topics

Metaprogramming:

  • Write a Python decorator that logs the execution time of a function. Example ✔️
  • Create a metaclass that enforces a Singleton pattern for classes. Example ✔️

Concurrency and Parallelism:

  • Implement a multi-threaded web scraper using the threading module. Example ✔️
  • Use the multiprocessing module to parallelize a CPU-bound task.

Functional Programming:

  • Implement a custom map function using only Python's built-in functions (no loops or list comprehensions).
  • Write a function that generates the Fibonacci sequence using a generator.

Data Structures and Algorithms:

  • Implement a binary search tree (BST) with insertion, deletion, and searching methods.
  • Solve the traveling salesman problem using a genetic algorithm.

Design Patterns:

  • Implement the Factory Method or Abstract Factory design pattern.
  • Create a Python program using the Observer pattern.

Advanced OOP:

  • Implement a custom context manager using enter and exit methods.
  • Create a class that behaves like a dictionary but supports dot notation for attribute access.

Data Analysis and Visualization:

  • Use libraries like Pandas and Matplotlib to analyze and visualize a dataset.
  • Implement a custom function for Principal Component Analysis (PCA).

Web Development:

  • Build a RESTful API using a web framework like Flask or Django.
  • Create a web scraping tool that collects data from a website and stores it in a database.

Machine Learning:

  • Implement a simple neural network from scratch using only NumPy.
  • Use a machine learning library like scikit-learn to build and evaluate a model on a dataset.

Networking:

  • Create a simple chat application using sockets in Python.
  • Implement a TCP server that handles multiple clients concurrently.

Security:

  • Write a script to analyze the security of a website by checking for common vulnerabilities.
  • Implement a basic encryption and decryption algorithm.

Testing:

  • Write unit tests for a complex function or class using the unittest or pytest framework.
  • Practice mocking external dependencies in your tests.

Concurrency with asyncio:

  • Build a simple asynchronous web server using the asyncio library.
  • Implement a program that fetches data from multiple URLs concurrently using asyncio.

Databases:

  • Create a Python script that interacts with a relational database (e.g., SQLite, PostgreSQL, MySQL) to perform CRUD operations.
  • Implement a data migration script using an ORM like SQLAlchemy.

Advanced Python Libraries:

  • Explore advanced features of libraries like NumPy, SciPy, and pandas, and solve challenging data manipulation or scientific computing problems.

About

Advanced python examples


Languages

Language:Python 100.0%