Курс «Введение в Python и обработку данных»

Лекция 1

Руководитель курса: Адрианов Николай Михайлович, к.ф.-м.н.

Читает курс: Бекбулатов Рамзан

Зачем вам этот курс

«Математику уже затем учить надо, что она ум в порядок приводит»

М. В. Ломоносов

Умение программировать — ваше конкурентное преимущество

Организационные моменты

Ход занятий

Ноутбуки желательны — для закрепления на практике

Вопросы — в любой момент

Как сдать курс

Нужно делать домашние задания

На занятия стоит ходить

Халявы не будет ✨

Что нужно для курса

Умение пользоваться компьютером

Умение пользоваться Всемирной Паутиной

Базовое знание английского языка

Аналогичные курсы

Coursera, Stepik, etc

Помощь и обратная связь

Чат Telegram: t.me/mm_python (tele.click/mm_python)

Где достать Python?

Интерпретатор: python.org/downloads

IDE (среда разработки): для начала IDLE и PyCharm потом

Почему Python?

История Python

Гвидо ван Россум (нидерл. Guido van Rossum) — автор Python

  • Python 1.0 — январь 1994 года
  • Python 2.0 — 16 октября 2000 года
    • Python 2.7 — 3 июля 2010 года
  • Python 3.0 — 3 декабря 2008 года
    • Python 3.7 — 27 июня 2018 года

Плюсы

  • Python прост в понимании и освоении: структура, синтаксис, читабельность
  • При своей простоте — очень функционален
  • Мощное сообщество: Python используется практически везде
  • Множество сторонних библиотек и удобство их использования

The Zen of Python

import this

Минусы

  • Медленный
  • Не всегда подходит для крупных проектов

Python

Интерпретируемый язык

Есть разные реализации интерпретаторов: CPython, Jython, PyPy

Hello World

print("Hello World!")

Значения и типы


                        type("Hello World!")
                        type(4)
                        type(7.8)
                    

Преобразование типов


                        int("42")
                        int(3.5)
                        str(123456789)
                    

Переменные


                        text = "Hello"
                        n = 10
                        pi = 3.1415
                        print(text)
                        type(pi)
                    

Динамическая типизация

Называть переменные можно латинскими буква, цифрами и знаком _

Операторы

Это специальные символы, обозначающие некоторые операции


                        10 + 15  # Сложение
                        12 - 5  # Вычитание
                        2 * 2  # Умножение
                        5 / 2  # Деление
                        5 // 2  # Деление в целых числах
                        pi ** 2  # Возведение в степень
                    

Приоритет операций как в математике

Простейшие операции над строками


                        str_1 = "Hello"
                        str_2 = "World"
                        print(str_1 + " " + str_2)
                        print(str_1 * 5)
                        print(len(str_1))
                    

Вызов функций


                        str_1 = "Hello"
                        print(len(str_1))
                        help(len)  # Справочная система
                    

Модули


                        import math
                        help(math.sin)
                        print(math.sin(0))
                    


                        from math import sin
                        help(sin)
                        print(sin(0))
                    

Основные типы ошибок

  • Синтаксические ошибки (syntax errors)
  • Ошибки выполнения (runtime errors)
  • Семантические ошибки (semantic errors)

Функции

Функция это блок кода, который можно вызывать из других мест

Блок кода оформляется сдвигом в 4 пробела


                        def f(a, b):
                            return a + b

                        print(f(1, 2))
                    

Условия

Оформляется также со сдвигом в 4 пробела


        def f(a):
            if a >= 2:
                print(str(a) + ' больше, либо равно 2')
            else:
                print(str(a) + ' меньше 2')

        f(1)
        f(2)
                    

Циклы

range — это генератор чисел, используется в двух вариациях


        help(range)

        for i in range(10):  # Выдает числа от 0 до N-1
            print('Первый генератор выдал: ' + str(i))

        start = 666
        stop = 999
        step = 100
        # Выдает числа от start до stop-1 с шагом step
        for i in range(start, stop, step):
            print('Второй генератор выдал: ' + str(i))
                    

Домашнее задание

  • (*) A1: Зарегистрироваться на GitHub (и создать репозиторий с названием PythonCourse) и на Rosalind. Скинуть ссылки на профили через эту форму.
  • (*) A2: Написать код, выводящий "Hello World!" 10 раз и закинуть его в свой репозиторий PythonCourse с названием hw_A2.py