Python Programming (Basic to Advanced)

Programming

COURSE OVERVIEW


The Basic to Advance Python Programming Course initially introduces the students to the Basics of Python Programming. After which, the course then provides the students higher concepts and programming logics. Upon completion of this class, the student will be able to write non-trivial Python programs dealing with a wide variety of subject matter domains.



Initially, attendees will start learning the Basic in Python topics such as the introduction, functions, syntaxes, and terminologies. Moving forward, attendees will learn the Intermediate to Advance Python topics such as testing and debugging, working with data, and classes & objects. In the last session of the modules, Learners will then be provided a Hands-on Capstone / Hackathon Project, enabling the Learners apply and test their acquired knowledge and skills from the Training.


Duration: 40 HRS / 5 DAYS)

Delivery Method: Classroom-based, Virtual Instructor Led Training


PRE-REQUISITES


We recommend that attendees of this course have the following prerequisites:

·      Previous experience with other programming languages (C, C++, Java, Perl, Lisp, Visual Basic, etc.)

·      Students with technical inclination and some experience developing projects like spreadsheets, SPSS scripts, Bash scripts, or macros are welcome to join. Python is a great first language -- it is very approachable and easy to learn


INTENDED AUDIENCE

 

This course is intended for:

  • Anyone who needs to learn how to write programs in Python or wants solid exposure to Python as their first programming language.
  • Those who have experience with other Programming Languages (C, C++, Java, Perl, Lisp, Visual Basic, etc.)


COURSE OBJECTIVES

 

Upon completion of the class, students should be able to:

  • Understand Python Programming, the basic installation, and utilization of Python Programming in Interactive and scripting modes, Data Structures, Functions, and Modules
  • Understand the Types, variables, and User Input / Output
  • Know the Flow Control in Python and understand Logical Operators and be able to plan the usage of Pseudocodes.
  • Know and understand the usage of Loops, Tuples, Lists and Dictionaries
  • Understand the User Input / Output Exceptions and Handling Exceptions as well as Object-Oriented Programming in Python
  • Know the Graphical Application Development in Python Programming and apply their knowledge.

COURSE OUTLINE:


MODULE 1 - Basic and Fundamentals of Python (Day 1 to Day 2)

 

·      Data Types

·      Function: print

·      Math operators: + - / *

·      String operator + *

·      Functions: int, str

·      Function: input

·      Optional parameters

·      String functions, upper, lower, swapcase, title, format

·      multi-line string

·      Boolean

·      Boolean operators: and, or, not

·      If statement

·      conditional operators: > < >= <= == !=

·      else

·      elif

·      Lists

·      list element assignment (list[] = element)

·      list functions: append, remove, len, index, insert, extend

·      for-loops.

·      Code blocks

·      list comprehension

·      range function

·      list slicing.

·      in operator.

·      list function: sort, reverse

·      Unpacking

·      tuple

·      string functions: split, join, count

·      list function: count

·      file function: open()

·      with statement

·      random library

·      shuffle, choice, randint

·      help() and dir()

·      from import

·      help and python manual

·      making a function

·      optional parameters

·      named parameter

·      importing function from other files

·      while, continue, break

·      turtle/logo programming


MODULE 2 - Basic of Python - Part 2 (Day 1 to Day 3)


·      enumerate(), zip()

·      Set

·      Dictionary

o   items(), keys(), get(), values()

·      None datatype

·      Function data type

·      Lambda

·      Error handling

o   try, except, else, finally

·      datetime library

·      Basic Object Oriented Programming

o   constructor

o   "private" methods

o   inheritance

§ super()

o   dunder functions

·      dir introspection

·      python debugger

·      Python IDEs

o   visual studio code

o   pycharm

o   IPython


MODULE 3 - Libraries (Day 2 - 4)


Any libraries or topics requested by audience. Recommended topics:

·      Web programming using Flask

·      Internet API connectivity (request)

·      Database (csv, sqlite, peewee, etc)

·      GUI programming (tkinter, Kivy)

·      Console/Terminal development

·      Test Driven Development

 


MODULE 4 - Practical Python (Day 4)

 

·      f-strings (python 3.6)

·      for-else

·      try-except-else

·      virtualenv and pipenv

·      Python's variables are by-reference

·      Shallow and deep copy

·      Generators

·      args, kwargs

·      Positional only and Keyword only parameters (python 3.8, python 3.7)

·      OOP

o   Instance and Class variables

o   dunder methods

o     getitem

o     repr 

o     str  

o     len  

o     call 

o     lt  

o     add  

·      Context Managers

·      Function caching

·      OS library

·      Pathlib library

·      Python Practices

o   code organization

§ modules and packages

o   PEP-8

o   Linters

§ pylint

·      more verbose

·      configurable

§ pyflake8

·      quality assurance

o   Idiomatic Python

§ https://jeffknupp.com/blog/2012/10/04/writing-idiomatic-python/

§ https://jeffknupp.com/writing-idiomatic-python-ebook/

 


MODULE 5 - Practical (Day 5)


Hackathon

Capstone where students use what they've learned to create a new program

Learning Experience Survey

Learning Experience Survey

Learning Experience Survey


REGISTER NOW