COURSE OBJECTIVES
Module 1:
- Familiarize the student with the basic methods offered by Python of formatting and outputting data, together with the primary kinds of data and numerical operators, their mutual relations and bindings.
- Introduce the concept of variables and variable naming conventions.
- Present the assignment operator, along with the rules governing the building of expressions. Introduce the inputting and converting of data.
Module 2:
- Familiarize the student with the concept of Boolean values, in order to compare difference values and control the execution paths using the if and if-else instructions.
- Introduce the utilization of loops (while and for) and how to control their behavior using the break and continue instructions.
- Present the difference between logical and bitwise operations.
- Acquaint the student with the concept of lists and list processing, including the iteration provided by the for loop, and slicing.
- Explain the idea of multi-dimensional arrays.
Module 3:
- Acquaint the student with the defining and using of functions – their rationale, purpose, conventions, and traps.
- Present the concept of passing arguments in different ways and setting their default values, along with the mechanisms of returning the function’s results.
- Explain name scope issues. Introduce new data aggregates: tuples and dictionaries, and show their role in data processing.
Module 4:
- Familiarize the student with Python modules: their rationale, function, how to import them in different ways, and present the content of some standard modules provided by Python.
- Present the way in which modules are coupled together to make packages.
- Acquaint the student with the concept of an exception and Python’s implementation of it, including the try-except instruction, with its applications, and the raise instruction.
- Introduce strings and their specific methods, together with their similarities and differences compared to lists.
Module 5:
- Acquaint the student with the fundamentals of OOP (Object Oriented Programming) and the way they are adopted in Python, showing the difference between OOP and the classical, procedural approach.
- Present the standard objective features: inheritance, abstraction, encapsulation, and polymorphism, along with Python-specific issues like instance vs. class variables, and Python’s implementation of inheritance. Exceptions are discussed again in a more detailed way, showing their objective nature.
- Familiarize the student with Python’s generators (the yield instruction) and closures (the lambda keyword).
- Demonstrate the means Python developers can use to process (create, read, and write) files.