# Python and Pythonic Python

img

# ClassWorks

# 0. Introduction: What is Python? What can we do with Python?

Recommended local Installation

  1. Python (opens new window) ( recommands Python Version 3.10 ++)
    • IDLE for Python IDE (alreadys installed with Python)
  2. (Optional) IDE (For example, VS Code (opens new window))

# 1. HelloWorld (print)

# 2. Variable, Type of Variable, Operator

# 3. None value

# 4. Casting

# 5. I/O

# 6. f-Strings

# 7. 1st Exercises

# 8. Boolean

# 9. If and Else

# 10. List and List's method

# 11. Loop: While loop

# 12. Loop: For loop

# 13. 2nd Exercises

# 14. Function

# 15. Nested List (List in List)

# 16. Dictionary

# 17. Data container (Dictionary for data/object representation)

# Pythonic Python

# Pythonic Way of Coding

  • Computer: Basic Commands (Both Powershell and Terminal)

  • Python: Python Package Manager - pipenv

  • Object-Oriented Programming Paradigm

    1. [Python: OOP - Class and Object]
    2. [Python: pass keyword]
    3. [Python: OOP - Class Attribute and Object Attribute]
    4. [Python: OOP - Static method] -> [Python: OOP - Class method]
    5. [Python: OOP - Inheritance]
    6. [Python: OOP - Override]
  • Python: Import and Modules

  • Python: String's method

  • [Python: String and List Slicing]

  • [Python: List Comprehension]

  • [Python: Dictionary Comprehension]

  • Functional Programming Paradigm

    1. [Python: Functional Programming - Pure Function and lambda]
    2. [Python: Functional Programming - Side Effects]
    3. [Python: map, filter, sorted and reduce]
    4. [Python: Decorators]
  • Type Hinting (Requires OOP and Functional Programming)

    1. [Static type VS Dynamic type]
    2. [Python: Type Hinting - Basic type and Class]
    3. [Python: Type Hinting - Function Parameter Type Hinting and Callable]
    4. [Python: Type Hinting - OOP Polymorphism]
    5. [Python: typing module]
    6. [Python: Overload]
    7. [Python: Generic]
  • Python: File Handling

  • [Python: Error Handling - Try&Except and raise]

  • [Python and Computer: Threading]

  • [Python: Generators and yield]

# Advanced Drawing

# Requirement

Recommended local Installation

  1. Python (opens new window)
  2. IDE (For example, VS Code (opens new window))

# Workshops

# Math Problems & Data structures and Algorithms

# Workshops

# Microcontroller (ESP32)

# Requirement

Recommended local Installation

  1. Thonny (opens new window)
  2. [Hardware List]
  1. [Understand Basic Circuit and Breadboard]
  2. [Switch]
  3. [Understand ESP32 and Micropython]
  4. [Flash ESP32]
  5. [ESP32 LED On/Off]
  6. [LED 12V]
  7. Relay 5V with LED 12V

# Workshops

  • Digital Circuits
    • [Boolean functions and Sum of Product (SOP)] -> [Decoders and Encoders] -> [8-LED running light circuit with ESP32 and 3-bit Decoder]

# Junior Cryptographer

# Requirements

  • [Encoding and Decoding - base64 and utf-8]
  • [Encryption and Decryption (concept)]

# Workshops

  • [Symmetric Key Encryption]
  • [Password Hashing]
  • [ASymmetric Key Encryption / Public Key Encryption]

# Junior Data Engineer

# Requirement

Recommended local Installation

  1. Python (opens new window)
  2. IDE (For example, VS Code (opens new window))

# Workshops

# Junior Data Scientist

# Requirement

There are many ways to do this workshop. You can use Cloud servies or install locally.

Recommended Cloud service

  1. Google Colab (opens new window)

Recommended local Installation

  1. Python (opens new window)
  2. IDE (For example, VS Code (opens new window))
  3. pipenv
  4. Dependencies
pipenv install --python 3.10
pipenv install numpy==1.22.3
pipenv install pandas==1.4.2
pipenv install matplotlib==3.5.1
pipenv install ipykernel==6.13.0
1
2
3
4
5

# Workshops

# Level up! Junior Data Engineer & Data Scientist

# Requirements

# Workshop(s)

  • [Covid analysis]