Skip to content

Python โ€” Programming Language Training

Last reviewed: 2026-05-29

Python is a high-level, interpreted programming language known for its readability, versatility, and extensive ecosystem. This training covers Python fundamentals, data analysis with pandas, and web application development with Streamlit.


Overview

Python is one of the most popular languages for data science, web development, automation, and scripting. This training repository contains practical projects and reference materials.


Training Content

Reference Materials

  • Pandas_Cheat_Sheet.pdf (387 KB) โ€” Quick reference PDF for pandas operations: DataFrames/Series, I/O, selection, filtering, grouping, merging, and visualization.

Practical Projects

1. NBA Player Stats Explorer (basketball_app.py)

A Streamlit web app that scrapes and explores NBA player statistics from Basketball-Reference.com.

Key features: - Year selector โ€” User selects a season year (1950โ€“2019) - Web scraping โ€” pd.read_html() fetches NBA per-game stats tables - Data cleaning โ€” Drops duplicate header rows, fills nulls with 0 - Sidebar filters โ€” Multi-select teams and positions (C, PF, SF, PG, SG) - Download โ€” CSV download via base64-encoded link - Heatmap โ€” Interactive intercorrelation matrix heatmap using seaborn/matplotlib

Libraries: streamlit, pandas, matplotlib, seaborn, numpy, base64

Data source: Basketball-Reference.com

2. Simple Stock Price App (getstockprice.py)

A minimal Streamlit app that displays historical stock data using the yfinance library.

Key features: - Fetches Google (GOOGL) stock data from 2015โ€“2021 - Displays closing price line chart - Displays trading volume line chart - Uses yfinance (Yahoo Finance API wrapper)

Libraries: streamlit, yfinance

3. CSS Styling (styles.css + code.txt)

Custom CSS for Streamlit app theming: - Adjusts layout margins and padding - Centers text in gray info boxes - Defines alternating row background colors (light gray / dark gray) - Hides Streamlit's default hamburger menu and footer - Hides tooltips

Loaded into Streamlit via:

with open('style.css') as f:
    st.markdown(f'<style>{f.read()}</style>', unsafe_allow_html=True)

Data Files

  • config.json (1 KB) โ€” JSON configuration for a Bloomberg SOR (Server/Order Routing) data connector project, containing:
  • CSV/JSON file paths
  • REST API endpoint URLs
  • SQL Server connection strings (SQLAlchemy + ODBC)
  • Table drop statements
  • event.csv (53 KB) โ€” CSV data file (event/timeseries data)
  • groupByTime.csv (1 KB) โ€” Aggregated CSV data
  • SORserversContactsRemoved.csv (30.7 MB) โ€” Large server inventory/contact CSV

Key Concepts Covered

Concept Example
Web scraping pd.read_html() for HTML tables
DataFrames Filtering, cleaning, correlation analysis
Streamlit Interactive web apps from Python scripts
Financial APIs yfinance for stock data
Base64 encoding File download links in browser
CSS customization Styling Streamlit apps
Configuration files JSON configs, SQL connections
Virtual environments pip/uv, Anaconda

Resources