Найти в Дзене
Алгоритм Дейкстры
Из многих алгоритмов поиска кратчайших маршрутов на графе, на Хабре я нашел только описание алгоритма Флойда-Уоршалла. Этот алгоритм находит кратчайшие пути между всеми вершинами графа и их длину. В этой статье я опишу принцип работы алгоритма Дейкстры, который находит оптимальные маршруты и их длину между одной конкретной вершиной (источником) и всеми остальными вершинами графа. Недостаток данного алгоритма в том, что он будет некорректно работать если граф имеет дуги отрицательного веса. Для...
5 лет назад
Калькулятор на Python
Начнём разработку. Пропишем строки, которые будут спрашивать информацию у пользователя нашей программы. Этой информацией будет числа и действия с этими числами. w = input( '+ или - или * или / :' ) a = float( input( 'Введите первое число:' )) b = float( input( 'Введите второе число:' )) Сначала мы запрашиваем действие, а потом числа. if w == '+': с = a + b print('Получилось:' + str(с)) Затем мы сравниваем переменную w с + (== - это оператор сравнения, не путайте с оператором присвоения =), и если w - это +, то мы выполняем действие и выводим его на экран...
5 лет назад
Циклы в Python
Практически каждый язык программирования содержит какую-нибудь конструкцию цикла. Такая есть и в Python. Цикл for: Мы используем цикл в тех случаях, когда вам нужно повторить что-нибудь n-ное количество раз. Это проще понять, если взглянуть на пример. Мы используем встроенную функцию range. Функция range создаст список длинной в «n» элементов. В Python версии 2 существует другая функция под названием xrange, которая является генератором чисел и не такая ресурсоемкая, как range. Давайте посмотрим...
5 лет назад
Оператор if-elif-else в Python
Давайте не будем долго тянуть и сразу перейдём к практике: a = int(input()) if a < -5: print('Low') elif -5 <= a <= 5: print('Mid') else: print('High') Сначала мы запрашиваем данные у пользователя, затем сравниваем с -5, затем сравниваем с -5 и 5, ну а если всё что ввёл пользователь было больше выводим фразу "High". Проверка истинности в Python Любое число, не равное 0, или непустой объект - истина. Числа, равные 0, пустые объекты и значение None - ложь Операции сравнения применяются к...
5 лет назад
Получение и вывод данных в Python
Получение данных от пользователя с помощью input Запрос данных от пользователя в Python осуществляется с помощью оператора input. Давайте попробуем спросить у пользователя его имя и сохранить введённые данные в переменную: a = input('Как вас зовут?:') Оператор input превращает всю информацию, полученную от пользователя в строку(string)...
5 лет назад
Типы данных в Python
Каждое значение в Python имеет тип. Поскольку всё в Python — объекты, типы являются классами, а значения — экземплярами (объектами) этих классов. Типы данных в Python: Числа: целые(int), вещественные(float) и комплексные(complex). Целые числа могут быть любой длины, они ограничиваются лишь доступной памятью. Числа с плавающей(вещественные) запятой имеют ограниченную точность. Визуально разницу между целым числом и числом с плавающей запятой можно заметить в консоли по наличию точки: 1 — целое число, 1...
5 лет назад
Рекурсия
В этой статье мы попытаемся понять, что же такое рекурсия и зачем она нужна. Рекурсией называется вызов функцией самой себя. Это достаточно распространённое явление, которое встречается не только в областях науки, но и в повседневной жизни. Например, эффект Дросте, треугольник Серпинского и т. д. Один из вариантов увидеть рекурсию – это навести Web-камеру на экран монитора компьютера, естественно, предварительно её включив. Таким образом, камера будет записывать изображение экрана компьютера, и выводить его же на этот экран, получится что-то вроде замкнутого цикла...
5 лет назад
Что такое переменные?
Во первых стоит отметить что Python является языком с динамической типизацией. Это означает что любая переменная может содержать любые значение. Переменные позволяют нам запоминать, переиспользовать и передавать данные в программах. Чтобы присвоить переменной значение, нужно записать имя этой переменной, затем оператор =, и наконец значение, которое мы хотим присвоить. Переменные в Python следует именовать в нижнем регистре и слова разделять нижним подчеркиванием: _. Например: max_age, init_state...
5 лет назад
Что такое хеш-таблицы?
Хеш-табли́ца — это структура данных, реализующая интерфейс ассоциативного массива, а именно, она позволяет хранить пары (ключ, значение) и выполнять три операции: операцию добавления новой пары, операцию поиска и операцию удаления пары по ключу. Реализации хеш-таблиц есть практически в каждом языке программирования. Например в языке программирования Python есть реализация хеш-таблиц, которую называют словарями. Поэтому вам вряд ли придётся писать свою реализацию этой структуры данных, но знать, что это такое нужно каждому программисту...
5 лет назад
Что такое Python?
Прежде чем учиться программировать, нужно сначала понять что же такое Python, и почему именно его лучше всего выбрать для первого языка программирования. Python - это высокоуровневый язык программирования общего назначения, ориентированный на повышение производительности разработчика и читаемости кода. То есть это сравнительно лёгкий язык программирования, который достаточно просто изучать. Именно поэтому мы советуем вам выбрать Python, как первый язык программирования. И теперь, когда мы хоть как-то разобрались в этих вопросах, мы можем переходить к нашей первой программе...
5 лет назад