Programming Language 1 (Python)
Programming Language 1 (Python)
Faculty of Engineering
Department of Electrical Engineering
Title of the Program: Computer and Control Section
                                                   1
University of Sana’a
Faculty of Engineering
Department of Electrical Engineering
Title of the Program: Computer and Control Section
  -    Exception handling.
  -    Introduction to database interaction.
(A) Alignment Course Intended Learning Outcomes of Knowledge and Understanding to Teaching
Strategies and Assessment Strategies:
      Course Intended Learning Outcomes                         Teaching strategies               Assessment Strategies
a1. Understand the fundamentals of computer                    Active Lectures.                 Written Assessment.
    programming using Python language and its basics:          Tutorials.                       Quizzes.
    keywords, variables and data types, reusability with
    functions and Object-Oriented Programming (OOP).
a2. Acquire knowledge of programs basic blocks, control
    statements, functions, modules, packages, and files.
                                                           2
University of Sana’a
Faculty of Engineering
Department of Electrical Engineering
Title of the Program: Computer and Control Section
(B) Alignment Course Intended Learning Outcomes of Intellectual Skills to Teaching Strategies and
Assessment Strategies:
     Course Intended Learning Outcomes                           Teaching strategies         Assessment Strategies
b1. Interpret the fundamental Python syntax and                 Active Lectures.            Written Assessment.
    semantics and be fluent in the use of Python control        Tutorials.                  Quizzes.
    flow statements.
b2. Express proficiency in the handling of various data
    types, strings and functions.
(C) Alignment Course Intended Learning Outcomes of Professional and Practical Skills to Teaching
Strategies and Assessment Strategies:
      Course Intended Learning Outcomes                          Teaching strategies         Assessment Strategies
c1. Determine the methods to create and manipulate              Active Lectures.            Written Assessment.
    Python programs by utilizing the data structures like       Tutorials.                  Quizzes.
    lists, dictionaries, tuples and sets.
c2. Choose the operating system suitable for a given
    computer system application case.
(D) Alignment Course Intended Learning Outcomes of Transferable Skills to Teaching Strategies
and Assessment Strategies:
     Course Intended Learning Outcomes                           Teaching strategies         Assessment Strategies
d1. Learn some basic problem-solving techniques and             Active Lectures.            Written Assessment.
    being able to apply them to different engineering           Tutorials.                  Quizzes.
    problems.
d2. Conduct searches on solutions for engineering
    problems from engineering and non-engineering
    domains.
                                                            3
University of Sana’a
Faculty of Engineering
Department of Electrical Engineering
Title of the Program: Computer and Control Section
                                       - Input and output statements.
                                       - Type conversions.
                                       - The type() function and is operator.
                                       - Dynamic and strongly typed language.
       Control Flow      a1, b1, b2,   - The if decision control flow statement.
       Statements        c1, c2, d1,   - The if…else decision control flow statement.
                         d2            - The if…elif…else decision control statement.
  3                                    - Nested if statement.                                1            2
                                       - The while loop.
                                       - The for loop.
                                       - The pass, continue and break statements.
       Functions         a1, b1, b2,   - Built-in functions
                         c1, c2, d1,   - Commonly used modules
                         d2            - Function definition and calling the function.
                                       - The return statement and void function.
  4                                    - Scope and lifetime of variables.                    2            4
                                       - Default parameters
                                       - Keyword arguments.
                                       - *args and **kwargs.
                                       - Command line arguments.
       Strings           a1, b1, b2,   - Creating and storing strings.
                         c1, c2, d1,   - Basic string operations.
                         d2            - Accessing characters in string by index number.
  5                                                                                          1            2
                                       - String slicing and joining.
                                       - String methods.
                                       - Formatting strings,
       Lists and         a1, b1, b2,   - Creating lists.
       Dictionaries      c1, c2, d1,   - Basic list operations.
                         d2            - Indexing and slicing in lists.
                                       - Built-in functions used on lists.
                                       - List methods.
                                       - The del statement.
  6                                                                                          1            2
                                       - Creating dictionary.
                                       - Accessing and modifying key:value pairs in
                                            dictionaries.
                                       - Built-in functions used on dictionaries.
                                       - Dictionary methods.
                                       - The del statement.
       Tuples and Sets   a2, b1, b2,   - Creating tuples.
                         c1, c2, d1,   - Basic tuple operations
                         d2            - Indexing and slicing in tuples
                                       - Built-in functions used on tuples
  7                                    - Relation between tuples and lists                   1            2
                                       - Relation between tuples and dictionaries
                                       - Tuple methods
                                       - Set methods
                                       - Traversing of sets.
       Files             a2, b1, b2,   - Types of files.
  8    manipulation      c1, c2, d1,   - Creating and reading text data.                     1            2
                         d2            - File methods to read and write data.
                                                       4
University of Sana’a
Faculty of Engineering
Department of Electrical Engineering
Title of the Program: Computer and Control Section
                                          - Reading and writing binary files.
                                          - The pickle module.
                                          - Reading and writing csv files.
                                          - Python os and os.path modules.
          Regular           a2, b1, b2,   - Using Special Characters
          Expressions       c1, c2, d1,   - Regular Expression Methods
  9                                                                                               1            2
                            d2            - Named Groups in Python Regular Expressions.
                                          - Regular Expression with glob Module
          Object-Oriented   a2, b1, b2,   - Classes and Objects.
          Programming       c1, c2, d1,   - Creating Classes in Python.
          (OOP)             d2            - Creating Objects in Python.
                                          - The Constructor Method.
  10                                      - Classes with Multiple Objects.                        2            4
                                          - Class Attributes versus Data Attributes.
                                          - Encapsulation.
                                          - Inheritance.
                                          - The Polymorphism
Number of Weeks /and Units Per Semester                                                         13            26
                                                         5
University of Sana’a
Faculty of Engineering
Department of Electrical Engineering
Title of the Program: Computer and Control Section
   VI. Assignments:
  No               Assignments                      Aligned CILOs(symbols)                   Week Due               Mark
  1
  2
  3
                                                               6
University of Sana’a
Faculty of Engineering
Department of Electrical Engineering
Title of the Program: Computer and Control Section
                                                   7
University of Sana’a
Faculty of Engineering
Department of Electrical Engineering
Title of the Program: Computer and Control Section
University of : Sana’a
Faculty of Engineering
Department of Electrical Engineering
Title of the Program: Electrical Engineering – Computer and Control Section
                                                   8
University of Sana’a
Faculty of Engineering
Department of Electrical Engineering
Title of the Program: Computer and Control Section
                                                           9
University of Sana’a
Faculty of Engineering
Department of Electrical Engineering
Title of the Program: Computer and Control Section
            A. Theoretical Aspect:
 Order                                     Topics List                             Week Due    Contact Hours
          - Introduction to programming concepts.
          - Types and history of programming languages.
  1                                                                                   1             2
          - History of Python.
          - Simple example programs in Python.
          - Identifiers, keywords.
          - Statements and expressions.
          - Variables and data types.
          - Operators, precedence and associativity
  2       - Indentation and comments.                                                 2             4
          - Input and output statements.
          - Type conversions.
          - The type() function and is operator.
          - Dynamic and strongly typed language.
          - The if decision control flow statement.
          - The if…else decision control flow statement.
          - The if…elif…else decision control statement.
  3       - Nested if statement.                                                      1             2
          - The while loop.
          - The for loop.
          - The pass, continue and break statements.
          - Built-in functions
          - Commonly used modules
          - Function definition and calling the function.
          - The return statement and void function.
  4       - Scope and lifetime of variables.                                          2             4
          - Default parameters
          - Keyword arguments.
          - *args and **kwargs.
          - Command line arguments.
          - Creating and storing strings.
          - Basic string operations.
          - Accessing characters in string by index number.
  5                                                                                   1             2
          - String slicing and joining.
          - String methods.
          - Formatting strings,
          - Creating lists.
          - Basic list operations.
          - Indexing and slicing in lists.
          - Built-in functions used on lists.
  6                                                                                   1             2
          - List methods.
          - The del statement.
          - Creating dictionary.
          - Accessing and modifying key:value pairs in dictionaries.
                                                           10
University of Sana’a
Faculty of Engineering
Department of Electrical Engineering
Title of the Program: Computer and Control Section
          - Built-in functions used on dictionaries.
          - Dictionary methods.
          - The del statement.
          - Creating tuples.
          - Basic tuple operations
          - Indexing and slicing in tuples
          - Built-in functions used on tuples
  7       - Relation between tuples and lists                                 1             2
          - Relation between tuples and dictionaries
          - Tuple methods
          - Set methods
          - Traversing of sets.
          - Types of files.
          - Creating and reading text data.
          - File methods to read and write data.
  8       - Reading and writing binary files.                                 1             2
          - The pickle module.
          - Reading and writing csv files.
          - Python os and os.path modules.
          - Using Special Characters
          - Regular Expression Methods
  9                                                                           1             2
          - Named Groups in Python Regular Expressions.
          - Regular Expression with glob Module
          - Classes and Objects.
          - Creating Classes in Python.
          - Creating Objects in Python.
          - The Constructor Method.
  10      - Classes with Multiple Objects.                                    2             4
          - Class Attributes versus Data Attributes.
          - Encapsulation.
          - Inheritance.
          - The Polymorphism
                       Number of Weeks/Units Per Semester                     13            26
                                                          11
University of Sana’a
Faculty of Engineering
Department of Electrical Engineering
Title of the Program: Computer and Control Section
   8        -
   9        -
  10        -
                           Number of Weeks/Units Per Semester                                      0                   0
   VI. Assignments:
  No              Assignments                    Aligned CILOs(symbols)                       Week Due                 Mark
   1
   2
   3
                                                             12
University of Sana’a
Faculty of Engineering
Department of Electrical Engineering
Title of the Program: Computer and Control Section
  2- Essential References.
       1- Jake VanderPlas, 2016, “Python Data Science Handbook: Essential Tools for Working with
           Data”, 1st Edition, O'Reilly Media. ISBN-13: 978-1491912058
       2- Wesley J Chun, 2015, “Core Python Applications Programming”, 3rd Edition, Pearson
           Education India. ISBN-13: 978-9332555365
  3- Electronic Materials and Web Sites etc.
       1-
13