This repository contains a collection of Python programming exercises, assignments, and projects completed as part of the Coursera Python Specialization. It covers foundational programming concepts, data structures, file handling, and intermediate projects including API usage and image processing.
Features
- Core Python programming exercises focusing on loops, conditionals, lists, dictionaries, and string manipulation.
- Assignments and projects organized by course modules.
- Practical applications including file I/O, web API interaction, data parsing, and basic image processing.
- Implementation of algorithms such as Fibonacci sequence and frequency analysis.
- Projects demonstrating use of external libraries like requests, PIL, OpenCV, pytesseract, and kraken.
Tech Stack
- Python 3
- Requests (for API calls)
- PIL/Pillow (image processing)
- OpenCV (computer vision)
- pytesseract (OCR)
- kraken (OCR and page segmentation)
Getting Started
Prerequisites
- Python 3.6 or higher
- pip package manager
Installation
- Clone the repository:
git clone https://github.com/justin-napolitano/PythonSpecializationCoursera.git
cd PythonSpecializationCoursera
- (Optional) Create and activate a virtual environment:
python -m venv venv
source venv/bin/activate # On Windows use: venv\Scripts\activate
- Install required packages:
pip install -r requirements.txt
Note: A requirements.txt file is not present in the repo; please create one based on imports such as requests, pillow, opencv-python, pytesseract, kraken.
Running Code
- Navigate to the course folder (e.g.,
Course1,Course2, etc.) and run Python scripts directly:
python Week3Assignment.py
- For projects involving APIs or image processing, ensure required data files and API keys (if any) are configured.
Project Structure
Course1toCourse5: Organized by course modules containing exercises and projects.- Top-level scripts such as
12.10Example.py,problem2.1.py, andWeek3Assignment.pycontain standalone example code. README.md: This file.
Future Work / Roadmap
- Consolidate dependencies into a
requirements.txtor environment file. - Add detailed docstrings and comments for all scripts.
- Refactor larger projects for modularity and testing.
- Include sample data files or instructions for obtaining them.
- Add automated tests and CI integration.
- Provide usage examples and expected outputs for projects.
This README assumes the repository is primarily educational and exploratory, focusing on Python programming fundamentals and intermediate projects.