Бакалавриат
2023/2024
Основы программирования на Python
Статус:
Курс обязательный
Направление:
41.03.05. Международные отношения
Кто читает:
Факультет мировой экономики и мировой политики
Где читается:
Факультет мировой экономики и мировой политики
Когда читается:
2-й курс, 4 модуль
Формат изучения:
без онлайн-курса
Охват аудитории:
для своего кампуса
Преподаватели:
Карпов Максим Евгеньевич
Язык:
английский
Кредиты:
3
Контактные часы:
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
- 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
- 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
- Use Python for routine tasks automation
- Use Python to read and write structured and unstructured files
- Write their own functions
- Use Jupyter Notebook or similar program
Course Contents
- Intro and logistics. Anaconda and 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.
- Data types: lists and tuples. For loop.
- For Loop (2nd Part)
- Methods I (Strings)
- Methods II (Lists)
- Review I.
- MIDTERM
- Data types: sets and dictionaries.
- Nested Structures
- Functions
- Working with text files in Python.
- Review II
- TEST
Assessment Elements
- Take-home Problem setsThere will be homework assignments with Python problems sets. Solutions should be submitted via SmartLMS platform and graded automatically. Each assignment will have its own deadline and will be graded from 0 to 10 points. The mean of all assignments will count towards the final grade with a weight of 15%.
- Midterm testThere will be a midterm test conducted via SmartLMS platform. The test will consist of a quiz and a few problems. The midterm test will cover topics studied so far. A Mock Test will be published a few weeks in advance. The grade for the test is from 0 to 10.
- Work in ClassThere will be mini-tasks during the seminars. The student needs to continue the snippet of code on a given task or answer the question. Semi-points and no points are allowed to assess the students' performance. The total grade will be normalised from the maximum in the group.
- QuizzesThere will be short in-class quizzes distributed throughout the course. Each quiz will take 5-10 minutes and will cover the material of the previous weeks (particularities will be communicated at least one week in advance). Question types might be a multiple-choice or a short answer. The average of all grades will count towards the final grade with a weight of 15%.
- Exam (Project Defence)At the end of the course students will have to participate in the group project. Groups will consist of 2-3 students. Students will have to submit their code and project description before the exam week and then defend it on the day of the exam. Students will be asked questions about the code they have submitted. The total grade will consist of a grade for the written part and a grade for the oral part. Particularities of the project will be announced in the second part of the 4th module.
Interim Assessment
- 2023/2024 4th modulemin(0.15 * Work in Class + 0.15 * Take-home Problem sets + 0.15 * Quizzes + 0.25 * Midterm Test + 0.3 * Exam (Project Defence), 8). In accordance with the Regulations for Interim and Ongoing Assessments of Students at National Research University Higher School of Economics, 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
Recommended Core Bibliography
- Lutz, M. (2008). Learning Python (Vol. 3rd ed). Beijing: O’Reilly Media. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=415392
- Python for data analysis : data wrangling with pandas, numPy, and IPhython, Mckinney, W., 2017
Recommended Additional Bibliography
- Taieb, D. (2018). Data Analysis with Python : A Modern Approach. Birmingham, UK: Packt Publishing. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1993344