>
Course Unit Title Course Unit Code Type of Course Unit Level of Course Unit Year of Study Semester ECTS Credits
Python Programming TBL220 Elective Bachelor's degree 2 Spring 5

Name of Lecturer(s)

Associate Prof. Dr. Süleyman EKEN
Research Assistant Seda BALTA

Learning Outcomes of the Course Unit

1) Design algorithms for engineering problems
2) Practice basic data processing using the computaiton tool
3) Uses advanced tools to simulate data
4) Designs, implements and tests computer programs using structural and object oriented approaches
5) Uses modern software systems and tools
6) Explain the concept of computation in general

Program Competencies-Learning Outcomes Relation

  Program Competencies
1 2 3 4 5 6 7 8 9 10 11
Learning Outcomes
1 No relation No relation No relation No relation No relation No relation No relation No relation No relation No relation No relation
2 No relation No relation No relation No relation No relation High No relation No relation No relation No relation No relation
3 No relation No relation No relation No relation No relation No relation No relation No relation No relation No relation No relation
4 No relation No relation No relation No relation No relation No relation No relation No relation No relation No relation No relation
5 No relation No relation No relation No relation No relation No relation No relation No relation No relation No relation No relation
6 No relation No relation No relation No relation No relation No relation No relation No relation No relation No relation No relation

Mode of Delivery

Face to Face

Prerequisites and Co-Requisites

None

Recommended Optional Programme Components

Not Required

Course Contents

Introduction to Programming, Introduction to Python Basic Elements of Python, Variables and Operations Control structures, Strings, Inputs, Loops Simple numerical programs Functions, Scoping and Abstraction Global Variables, Modules, Files Structural Types, Interchangeability and Higher Order Functions Arrays and Multidimensional Arrays Classes and Object Oriented Programming A Simple Introduction to Algorithmic Complexity Simple Algorithms and Data Structures. Search and Sort Algorithms Plotting Random Walks and Data Visualization Understanding Experimental Data

Weekly Schedule

1) Introduction to Programming, Introduction to Python
2) Basic Elements of Python, Variables and Operations
3) Control structures, Strings, Inputs, Loops
4) Simple numerical programs
5) Functions, Scoping and Abstraction
6) Global Variables, Modules, Files
7) Structural Types, Interchangeability and Higher Order Functions
8) Midterm exam
9) Arrays and Multidimensional Arrays
10) Classes and Object Oriented Programming
11) A Simple Introduction to Algorithmic Complexity
12) Simple Algorithms and Data Structures. Search and Sort Algorithms
13) Plotting
14) Random Walks and Data Visualization
15) Understanding Experimental Data
16) Final exam

Recommended or Required Reading

1- Introduction to Computation and Programming Using Python, with Application to Understanding Data, John Guttag, Second Edition, MIT Press, 2016.
2- Python for Data Analysis, 2nd Edition Data Wrangling with Pandas, NumPy, and IPython, William McKinney, 2017

Planned Learning Activities and Teaching Methods

1) Lecture
2) Question-Answer
3) Discussion
4) Drill and Practice
5) Modelling
6) Group Study
7) Case Study
8) Lab / Workshop
9) Self Study
10) Problem Solving
11) Project Based Learning


Assessment Methods and Criteria

Contribution of Semester Studies to Course Grade

60%

 

Number

Percentage

Semester Studies

Midterm Examination

1

50%

Project

1

50%

 

Contribution of Final Examination to Course Grade

40%

Total

100%

Language of Instruction

Turkish

Work Placement(s)

Not Required