• A
  • A
  • A
  • АБB
  • АБB
  • АБB
  • А
  • А
  • А
  • А
  • А
Обычная версия сайта
Бакалавриат 2025/2026

Основы программирования на Python

Язык: английский
Кредиты: 4
Контактные часы: 42

Course Syllabus

Abstract

The Python programming language is one of the easiest to learn and popular programming languages. The aim of the course is to learn the basic constructs of the Python language, which will be useful in solving a wide range of problems - from data analysis to the development of new software products. The course provides the necessary foundation for mastering more specialized areas of the Python language, such as machine learning, statistical data processing, data visualization, and many others. The course offers a large number of programming tasks, arranged in order of increasing complexity, which allows you to consolidate the studied material in practice.
Learning Objectives

Learning Objectives

  • Students achieve excellent results by doing a considerable amount of practical exercises both in class and at home and taking part in group projects
Expected Learning Outcomes

Expected Learning Outcomes

  • Know and differentiate basic Python data types. Choose the correct data types based on the problem in hand
  • Know and understand basic Python syntax
  • Load and use additional Python modules
  • Solve not complex algorithmic problems using Python
  • Use Python for routine tasks automation
  • Use Python to read and write structured and unstructured files
  • Write their own functions
  • Use local-based IDE Jupyter Notebook or similar
Course Contents

Course Contents

  • Intro and logistics. Jupyter Notebook First program.
  • Data types: integers and strings. Input and output. Strings formatting.
  • Data types: floating-point numbers and boolean. Logical operators. Conditionals.
  • While loop.
  • For Loop (2nd Part)
  • Data types: lists and tuples. For loop.
  • Problem-solving seminar
  • Methods I (Strings)
  • Methods II (Lists)
  • Review I.
  • Data types: sets and dictionaries.
  • Nested Structures
  • Functions
  • Working with structured files in Python.
Assessment Elements

Assessment Elements

  • blocking Exam
    The exam is conducted in the format of project defence and oral survey. There will be no time for preparation, a student will answer the questions from the start. If the professor believes that it is necessary to determine more accurate assessment, he can ask additional question(s). The following topics will be included into the exam. Topic 1. Variables. Rules for naming variables. input(), print(sep, end), f-string. Basic data types (int, float, str). len(). Arithmetic Operations. Different types of error: NameError, SyntaxError, IndexError, TypeError. Topic 2. Conditional Statements if-elif-else. Boolean data type. Comparison Operators. Logical Operators (and, or, not). Nested Statements. Topic 3. While Loop. While with if-statements. Eternal Loop. Breaking the Loop. Topic 4. Sequences (List, Tuple). split(). in, not in operators. Unpacking operator *. For Loop. Slices. for i in range(), for i in range(len()). Nested for loop Topic 5. Strings and Lists Methods. Slicing. map function(), sum(), min(), max() Topic 6. Sets. Set Methods. Set Operations (Intersection, Union, Difference, Symmetric Difference). Dictionaries (keys, values, items). Operations with dictionaries. Topic 7. Sorted(reverse, key). Nested lists. Nested dictionaries. Topic 8. Functions. Topic 9. Working with files.
  • non-blocking Seminar Participation
    To get full mark for the participation, a student needs to actively participate in the class discussions, to demonstrate familiarity with assigned readings and lecture material, to comment on a home assignment, including being prepared to answer the questions that the instructor may pose.
  • non-blocking In-class Assignments
    There will be in-class assignments with Python problems sets. Solutions should be submitted via Smart LMS platform using Safe Exam Browser and graded automatically.
  • non-blocking Midterm test
    The midterm test will be conducted via Smart LMS platform using Safe Exam Browser. The test will consist of 10 coding problems. The test will cover topics up to the Nested Structures. A Mock Test will be published in advance. The grade for the test is from 0 to 10.
  • non-blocking Quizzes
    There will be short in-class quizzes distributed throughout the course in Smart LMS using Safe Exam Browser. Each quiz will take 5-10 minutes and will cover the material of the previous weeks. Question types might be a multiple-choice or a short answer.
Interim Assessment

Interim Assessment

  • 2025/2026 3rd module
    min(0.25 * Seminar Participation + 0.1 * In-class Assignments + 0.1 * Quizzes + 0.25 * Midterm Test + 0.3 * Exam, 8). Remark: In accordance with the Regulations for Interim and Ongoing Assessments of Students at HSE University, grades awarded on the basis of interim assessment outcomes of the discipline-prerequisites for the independent exam on digital competency may not exceed 8 points.
Bibliography

Bibliography

Recommended Core Bibliography

  • Ben Stephenson. (2019). The Python Workbook : A Brief Introduction with Exercises and Solutions (Vol. 2nd ed. 2019). Springer.
  • Downey, A. (2015). Think Python : How to Think Like a Computer Scientist (Vol. Second edition). Sebastopol, CA: O’Reilly Media. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1105725
  • Programming Python : [covers Python 2.5], Lutz, M., 2006
  • Severance, C. (2016). Python for Everybody : Exploring Data Using Python 3. Place of publication not identified: Severance, Charles. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsotl&AN=edsotl.OTLid0000336

Recommended Additional Bibliography

  • Ivan Idris - Python Data Analysis - Packt Publishing, Limited , 2014-430 - Текст электронный - https://ebookcentral.proquest.com/lib/hselibrary-ebooks/detail.action?docID=1826990

Authors

  • KARPOV MAKSIM EVGENEVICH
  • Bakshuk Matvei Viacheslavovich
  • Кузнецова Елена Викторовна
  • Вишнякова Наталия Владимировна