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:
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 |