Питон решение задач строки

Задачи на строки python

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

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

В ходе работы над этой небольшой программой, мы поймем, как можно определить, является ли слово палиндромом или нет. Палиндром — это строка, которая читается одинаково, и спереди и сзади, например слово «Мадам» . Для того, что бы хорошо освоить этот материал, вам необходимо знать следующие темы:

Исходный код программы

 
my_str = 'мадам' my_str = my_str.casefold() rev_str = reversed(my_str) if list(my_str) == list(rev_str): print("Строка является палиндромом") else: print("Строка не является палиндромом")
  1. В этой программе, мы берем строку, которая хранится в my_str .
  2. Далее используем метод casefold() , для преобразования строки в нижний регистр
  3. Производим реверс строки с помощью метода reversed()
  4. Далее создаем условия, в котором производим сравнение. Перед сравнением упаковываем все в список.

Удалить знаки препинания python

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

Исходный код программы:

 
punctuations = '''!()-[]<>;:'"\,<>./?@#$%^&*_~''' my_str = "Привет. Меня зовут ---Алексей." # my_str = input("Введи строку ") no_punct = "" for char in my_str: if char not in punctuations: no_punct = no_punct + char print(no_punct)
  1. В самом начале в переменной punctuations , мы определили знаки препинания
  2. Затем переменной my_str присвоили строку
  3. Определяем переменную no_punct , который присваиваем пустую строку
  4. Запускаем цикл, перебираем my_str, если в нем встречается символ пунктуации, заменяем ее на пустую строку

Алфавитный порядок слов Python

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

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

 
my_str = "Привет, это пример строки в алфавитном порядке" #my_str = input("Enter a string: ") words = [word.lower() for word in my_str.split()] words.sort() print("The sorted words are:") for word in words: print(word) Результат: Алфавитный порядок: алфавитном в порядке привет, пример строки это
  1. Переменной my_str присваиваем строку, которую надо отсортировать в алфавитном порядке
  2. С помощью метода split() , мы преобразовываем каждое слово в список слов
  3. Методом sort() , производим сортировку и выводим на печать

Количество гласных букв в слове

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

Исходный код:

glasalph = 'аеёиоуэюя' ip_str = 'Привет, меня зовут Тимур, мне 30 лет, в этом предложении, мы будет считать количество глассных букв?' ip_str = ip_str.casefold() count = <>.fromkeys(glasalph,0) for char in ip_str: if char in count: count[char] += 1 print(count) Результат:

  1. Объявили переменную glasalph , которой присвоили строку, с гласными буквами
  2. Объявили переменную ip_str , в которой хранится строка, где мы будем искать гласные
  3. Используем метод casefold() , и переводим всю строку в нижний регистр
  4. Используем метод словаря fromkeys() , для построения нового словаря с каждым гласным в качестве ключа, с нулевым значением
  5. Запускаем цикл for, и на каждой итерации смотрим, есть ли символ в ключах словаря, если есть, увеличиваем его значение на 1

Анаграммы Python

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

И так, давайте немного разберемся. Анаграма — это слова состоящие из одних и тех же букв, расположенных в разном порядке. Наша задача, определить, являются ли две строки анаграммами. Как мы можем это сделать? В данном случае, я вижу довольно простой алгоритм.

  1. Привести обе строки в нижний регистр
  2. Отсортировать обе строки и сравнить их
  3. Если обе строки равны, то это анаграмма
 
str1 = "Игра" str2 = "Рига" # Приводим в нижний регистр str1 = str1.lower() str2 = str2.lower() # Сравниваем длину строк if(len(str1) == len(str2)): # Сортируем обе строки sorted_str1 = sorted(str1) sorted_str2 = sorted(str2) if(sorted_str1 == sorted_str2): print(str1 + " и " + str2 + " Являются анаграмой.") else: print(str1 + " и " + str2 + " не являются анаграмой.") else: print(str1 + " и " + str2 + " не являются анаграмой")

Количество символов в строке python

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

Для решения этой задачи, вам необходимо знать следующие темы:

Исходный код:

Источник

Питон решение задач строки

Напишите программу ввода двух слов через пробел. Сформируйте новую строку, продублировав первое слово дважды, а второе - трижды (все слова в результирующей строке должны идти через пробел). Результат выведите на экран.

Программу следует реализовать без использования F-строк, а с применением оператора дублирования строк.

Все решения теперь можно найти в сообществе Как войти в IT s1, s2 = input().split() print((s1 + ' ') * 2 + (s2 + ' ') * 3)

Выполняется считывание двух целочисленных значений в переменные a и b (вводятся в одну строчку через пробел). Необходимо сформировать строку вида: "Переменная a = , переменная b = ", используя оператор конкатенации (соединения) строк. Результат выведите на экран.

P. S. F-строки в программе не использовать.

Все решения теперь можно найти в сообществе Как войти в IT

var1, var2 = input().split() print('Переменная a = ' + var1 + ', переменная b = ' + var2) 

Написать программу ввода строки и формирования новой строчки вида: "Строка: . Длина: ". Результат сформированной строки вывести на экран.

P. S. В программе F-строки не использовать.

Все решения теперь можно найти в сообществе Как войти в IT

s = input() print('Строка: ' + s + '. Длина: ' + str(len(s))) 

Написать программу ввода двух слов (через пробел в одну строчку). Определить булевы значения для оператора in проверки вхождения первого слова во второе. А также для операторов ==, >, <. Все булевы значения объединить в одну строку через пробел и вывести на экран.

Все решения теперь можно найти в сообществе Как войти в IT

s1, s2 = input().split() print(str(s1 in s2) + ' ' + str(s1 == s2) + ' ' + str(s1 > s2) + ' ' + str(s1  s2)) 

С клавиатуры вводятся две буквы (в одну строку через пробел). Вывести на экран следующую строку:

Все решения теперь можно найти в сообществе Как войти в IT

l1, l2 = input().split() print('Коды: ' + l1 + ' = ' + str(ord(l1)) + ', ' + l2 + ' = ' + str(ord(l2))) 

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

Все решения теперь можно найти в сообществе Как войти в IT

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

Все решения теперь можно найти в сообществе Как войти в IT

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

Все решения теперь можно найти в сообществе Как войти в IT

Вводятся две строки (каждая с новой строчки). Из первой строки выделить все символы с четными индексами, а из второй - с нечетными. Объединить строки через пробел и вывести на экран.

Все решения теперь можно найти в сообществе Как войти в IT

s1, s2 = input()[::2], input()[1::2] print(s1 + ' ' + s2) 

Из введенной строки отобразить первые пять символов в обратном порядке. Полагается, что введенная строка имеет минимум пять символов.

Все решения теперь можно найти в сообществе Как войти в IT

Вводятся два слова (через пробел в одной строке). Длина первого слова меньше второго. Необходимо обрезать второе слово до длины первого и отобразить обрезанное слово на экране.

Все решения теперь можно найти в сообществе Как войти в IT

s1, s2 = input().split() print(s2[:len(s1)]) 

Вводятся два слова (через пробел в одной строке). Длина второго слова меньше первого. Из этих слов выделить символы с нечетными индексами с обрезкой первого слова до длины второго. Сравнить полученные строки между собой на равенство и результат (True или False) вывести на экран. Задачу выполнять без использования условного оператора.

Все решения теперь можно найти в сообществе Как войти в IT

s1, s2 = input().split() print(s2[1::2] == s1[:len(s2)][1::2]) 

Источник

Читайте также:  Object property names javascript
Оцените статью