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

Анализ данных в Python

Статус: Курс обязательный
Направление: 38.03.05. Бизнес-информатика
Когда читается: 2-й курс, 3 модуль
Формат изучения: без онлайн-курса
Охват аудитории: для своего кампуса
Преподаватели: Саночкин Юрий Ильич
Язык: английский
Кредиты: 3
Контактные часы: 36

Course Syllabus

Abstract

From the course one can learn programming skills in python. The course aims on beginners (people who have never written code) and covers a variety of different topics: from basic (syntax, data types, operators) to more complex and specific ones (OOP, async).
Learning Objectives

Learning Objectives

  • The course is aimed to provide students with necessary knowledge and tools to write programs in python and understand code written by others.
  • During the learning process, students will gain the ability to develop and deploy real python projects in teams of 3-4 people.
Expected Learning Outcomes

Expected Learning Outcomes

  • Be able to set up python environment under any operating system;
  • Understand key concepts of programming (procedural, functional paradigms, OOP, data types, algorithm complexity, TDD, etc.) and apply them;
  • Be able to write scripts in python for the variety of different tasks;
  • Be able to cover and support code with unit tests, linters, and formatters;
  • Be able to find and read documentation on python libraries not covered by the course.
Course Contents

Course Contents

  • 1. Introduction to programming and the Python language
  • 2. Python script mode. Conditional execution
  • 3. Loops
  • 4. Bitwise operations. Error handling techniques
  • 5. Functions and modules. Name scopes. Recursive algorithms
  • 6. Python data model. Lists, sets, tuples
  • 7. Introduction to algorithmic complexity. Sorting algorithms
  • 8. Strings. Advances techniques of text processing, regular expressions
  • 9. Special Python syntactic features for linear collections
  • 10. Associative containers
  • 11. File input-output
  • 12. Elements of functional programming. Lambda functions, iterables, generators
  • 13. Introduction to object-oriented programming
  • 14. Object-oriented programming in depth
  • 15. Decorators
  • 16. Threads and processes in Python
  • 17. Development & Deployment
  • 18. Unittesting in Python
  • 19. Advanced techniques
Assessment Elements

Assessment Elements

  • non-blocking HA
    Average grade for all practical homework assignments provided in the course
  • non-blocking Activity
    Assessing student attendance and activity at seminars, as well as activity at lectures
  • non-blocking Exam
    The exam is practical work performed by students based on the results of mastering the course.
Interim Assessment

Interim Assessment

  • 2023/2024 3rd module
    0.21 * Activity + 0.4 * Exam + 0.39 * HA
Bibliography

Bibliography

Recommended Core Bibliography

  • 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
  • Eric Matthes. (2019). Python Crash Course, 2nd Edition : A Hands-On, Project-Based Introduction to Programming: Vol. 2nd edition. No Starch Press.
  • Learning Python : [covers Python 2.5], Lutz, M., 2008
  • Lutz, M. (2011). Programming Python : Powerful Object-Oriented Programming (Vol. 4th ed). Sebastopol, CA: O’Reilly Media. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=415412
  • Sweigart, Al. Automate the boring stuff with Python: practical programming for total beginners. – No Starch Press, 2015. – 505 pp.
  • Программируем на Python, Доусон, М., 2015

Recommended Additional Bibliography

  • Baka, B. (2017). Python Data Structures and Algorithms. Birmingham, U.K.: Packt Publishing. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1528144