Master
2020/2021
Python Basic
Type:
Compulsory course (Master of Data Science)
Area of studies:
Applied Mathematics and Informatics
Delivered by:
Big Data and Information Retrieval School
Where:
Faculty of Computer Science
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
- 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
- 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
- Introduction to Python ProgrammingInstalling 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 LoopLogical data type and logical expressions. Truth tables. Conditional statement. While loop. Logical operators.
- Float and String Data TypesFloat data type. Math module. String methods. Formatting strings. Errors in Python.
- For LoopTuples basics. Range function. Iterable objects. For loop.
- Data StructuresData structures. Tuples. Lists. Practicing list methods. Tuples methods. List comprehensions.
- FunctionsSimple function. Return statement. Local and global variables. Recursion.
Assessment Elements
- Programming AssignmentsThe lowest grade for 2 out of 62 assignments will be dropped when the final score will be computed.
- Weekly QuizzesThe lowest grade for 1 out of six quizzes will be dropped when the final score will be computed.
- Staff-Graded Assignments
- Final Project
Interim Assessment
- Interim assessment (1 semester)There 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
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.