• A
  • A
  • A
  • ABC
  • ABC
  • ABC
  • А
  • А
  • А
  • А
  • А
Regular version of the site
Master 2020/2021

Python Basic

Type: Compulsory course (Master of Data Science)
Area of studies: Applied Mathematics and Informatics
When: 1 year, 1 semester
Mode of studies: offline
Instructors: Kirill Chmel
Master’s programme: Master of Data Science
Language: English
ECTS credits: 5
Contact hours: 90

Course Syllabus

Abstract

Python is a general-purpose, multi-paradigm, open-source, scripting language. It has a clean syntax with high level data types, and a powerful set of libraries. It is a simple language for beginners to learn, though it is powerful enough for writing large applications. It has been one of the most popular programming languages of the recent years and has many areas of application from web applications to machine-learning and data science. This 6-week course is an introduction to the Python programming language. The average time to complete this course depends on your background, but in principle you might spend 5 to 10 hours per week. To complete the course, students are supposed to have mathematical skills at the high school level. Students’ academic performance is evaluated using programming assignments and project assignments. The examples and problems used in this course are drawn from diverse areas such as text processing, HTML and web programming, marketing and data analytics.
Learning Objectives

Learning Objectives

  • The major goal of the course is to teach students how to use Python interactively, i.e. understand interpreter and compilers; execute a Python script at the shell prompt; use Python data types and logical expressions; use string literals, string type, and regular expressions; understand the difference between mutable and immutable types; use Python statements (if...elif..else, for, while); understand assignment semantics; write and call a simple function.
Expected Learning Outcomes

Expected Learning Outcomes

  • understand the main components of programming language;
  • work with print and input function;
  • know the main scenarios of using comments;
  • know principles of variables naming;
  • understand different data types;
  • create right expressions with different data types;
  • understand the main paradigm of conditional statement;
  • create if logical statement;
  • solve different tasks with if statement;
  • understand cases for working with while loop;
  • understand the main problems of float numbers;
  • operate with float numbers;
  • work with different methods for strings.
  • create for loop in Python;
  • know the main cases of using for loop;
  • create tuples in Python ;
  • create a range function with different parameters.
  • understand the main paradigm of data structure;
  • work with tuples in Python;
  • know the difference between tuples and lists;
  • operate with lists in Python;
  • know concepts of list comprehensions.
  • create functions in Python;
  • understand paradigm of function;
  • create recursion function;
  • know about local and global variables;
  • know about arguments of function.
Course Contents

Course Contents

  • Introduction to Python Programming
    Installing Python. How to use Jupyter Notebook. Variables. Naming. Print() and input() functions. Writing your first program. Data types in Python. Static and dynamic typing. Operators and expressions.
  • Conditional Statement and While Loop
    Logical data type and logical expressions. Truth tables. Conditional statement. While loop. Logical operators.
  • Float and String Data Types
    Float data type. Math module. String methods. Formatting strings. Errors in Python.
  • For Loop
    Tuples basics. Range function. Iterable objects. For loop.
  • Data Structures
    Data structures. Tuples. Lists. Practicing list methods. Tuples methods. List comprehensions.
  • Functions
    Simple function. Return statement. Local and global variables. Recursion.
Assessment Elements

Assessment Elements

  • non-blocking Programming Assignments
    The lowest grade for 2 out of 62 assignments will be dropped when the final score will be computed.
  • non-blocking Weekly Quizzes
    The lowest grade for 1 out of six quizzes will be dropped when the final score will be computed.
  • non-blocking Staff-Graded Assignments
  • non-blocking Final Project
Interim Assessment

Interim Assessment

  • Interim assessment (1 semester)
    T​here are no blocking parts in the grading, but you have to get at least 50% to pass the course. The passing grade is 4. Your final score will be calculated as a weighted sum of Quizzes (5%), SGA (25%), Programming Assignments (50%) and the Final project (20%). Your grade will be found according to the following rule: 1-29%: 1 30-%: 2 40-%: 3 50-%: 4 55-%: 5 65-%: 6 75-%: 7 85-%: 8 90-%: 9 95-100%: 10
Bibliography

Bibliography

Recommended Core Bibliography

  • Romano, F. (2015). Learning Python. Birmingham: Packt Publishing. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=nlebk&AN=1133614
  • Vanderplas, J. T. (2016). Python Data Science Handbook : Essential Tools for Working with Data (Vol. First edition). Sebastopol, CA: Reilly - O’Reilly Media. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=nlebk&AN=1425081

Recommended Additional Bibliography

  • Álvaro Scrivano. (2019). Coding with Python. Minneapolis: Lerner Publications ™. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1947372
  • Ben Stephenson. (2019). The Python Workbook : A Brief Introduction with Exercises and Solutions (Vol. 2nd ed. 2019). Springer.