3 программы на Python в одну строку

3 программы в одну строку на python Статьи

Введение

В данной статье напишем 3 программы на python в одну строку.

Данными программами Вы сможете удивить друзей и знакомых, ведь мало кто знает, что вместо большого кода можно отделаться одной строчкой.

Калькулятор в одну строку

Python великолепен тем, что всего лишь в одной строке можно создать целый калькулятор! Так что если Вы только начинаете изучать python и Вас попросили написать калькулятор, будет возможность показать данную программу.

Код программы:

while True: print(eval(input('>>>')))

В самом начале программы создаётся бесконечный цикл while;

Функция print() выводит функцию eval();

Функция eval() выполняет строку-выражение переданное ей в качестве обязательного аргумента и возвращает результат выполнения этой строки.

Факториал в одну строку

В основном функцию для нахождения факториала пишут для понимания рекурсии, но в нашем случае мы просто рассмотрим создание подобной программы в одну строку. Есть несколько вариантов такой программы, рассмотрим два из них.

Первый вариант

В данном варианте как раз будет присутствовать рекурсия, так что можно его использовать как её пример.

Код программы:

factorial = lambda x: factorial(x - 1) * x if x > 1 else 1

Создаём функцию factorial;

Вызываем функцию factorial внутри себя, тем самым делая рекурсию и умножая число на последующее;

В условии мы проверяем, закончилось ли введённое число при вычитании единицы с каждой итерацией.

Второй вариант

Во втором варианте мы не будем использовать анонимные функции. В нём у нас опять же будет задействована функция eval(), а так же генератор.

Код программы:

print('Factorial:',eval(str([i for i in range(1,int(input('number -> '))+1)]).replace(', ','*')[1:-1]))

В самом начале функция print() выводит функцию eval();

В функции eval() находится генератор, генерирующий числа по порядку вплоть до вводимого пользователем числа;

Срабатывает метод replace(), в котором находится срез [1:-1].

Проверка строки на палиндром в одну строку

Ну и последняя программа, которую мы напишем проверяет строку на палиндром с помощью среза.

palindrom = lambda a: 'Строка является палиндромом' if a == a[::-1] else "Строка не является палиндромом"

Создаём функцию palindrom;

Задаётся условие, что если строка является палиндромом, то в консоль выводится «Строка является палиндромом», если же нет, то выводится «Строка не является палиндром».

Заключение

И так, мы разобрали целых 3 программы, которые можно написать в одну строку с помощью python, надеюсь они Вам понравились!

На этом статься подходит к концу, спасибо всем кто читал 🙂

Admin
Admin
IT Start
Добавить комментарий

  1. Аватар
    Иван

    Пойду удивлять информатичку))

    Ответить
    1. Аватар
      Данил

      Ага, прикольно 🙂

      Ответить