Course Code: pythonprogbspk
Duration: 28 hours
Course Outline:

1. Introduction to Python Programming

  • Running Python code
  • Using Python Development Tools (IDEs and command line tools)
  • Working with Python in PyCharm Community and Professional

2. Data Types and Operations

  • Integers and floats
  • Strings and bytes
  • Tuples and lists
  • Dictionaries and ordered dictionaries
  • Sets and frozen sets

3. Organizing and Distributing Code

  • Creating modules and packages
  • Distributing code to repositories

4. Working with extended modules

  • Modules re, sys, os

5. Working with data using numpy and pandas      

  • Data sources: Excel, Databases, csv, txt
  • Using Data Series
  • Using Data Frame
  • Data modifications
  • Sorting and filtering data
  • Aggregate operations
  • Analyzing time series
  • Export data

6. Data visualization

  • Plotting diagrams with matplotlib
  • Using matplotlib from within pandas
  • Creating diagrams and charts                    

7. Object Oriented and Functional Programming

  • Creating and using functions and classes
  • Inheritance in OOP from one or many classes
  • Modifying functions and classes with decorators
  • Introducing meta-classes

8. Error Handling and Testing

  • Handling and raising exceptions
  • Writing and executing tests (doc tests and unit tests)
  • Checking code coverage by tests (PyCharm pro version)

9. Working with Files and Directories

  • Accessing different types of files and file handling principles
  • Creating, reading, updating and deleting files (including regular text files, csv, as well as Microsoft Word and Microsoft Excel files)
  • Extracting data from text files using Regular Expressions
  • Creating and deleting directories, listing and searching for files

10. Accessing Databases

  • Selecting, inserting, updating and deleting data
  • Generic database API based on SQLite 3, PostgreSQL and MySQL
  • Using the Object Relational Mapper (SQLAlchemy)
  • Working with NoSQL databases