it Задачи Задача на Python: "Разделение строки"
Задача на Python: "Разделение строки"

Задача на Python: "Разделение строки"

8 384
12 августа 2024 в 17:16

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

У вас есть строка, состоящая из слов, разделённых пробелами. Задача состоит в том, чтобы разделить эту строку на слова и определить, сколько слов содержат хотя бы одну заглавную букву.


Условия:

  1. Входная строка содержит только буквы латинского алфавита (как заглавные, так и строчные) и пробелы.
  2. Пробелы могут быть только между словами, в начале и конце строки пробелов нет.
  3. Если в строке нет слов с заглавными буквами, вернуть 0.


Пример:

# Входная строка
s = "Hello world this Is a Test"

# Ожидаемый результат
3


Объяснение:

  • В строке "Hello world this Is a Test" слова "Hello", "Is" и "Test" содержат заглавные буквы, следовательно, результат будет 3.


Дополнительное задание (по желанию):

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

def count_uppercase_words(s: str) -> int:
	# Ваш код здесь


Решение задания

Решение этой задачи можно описать следующим образом:

  1. Сначала необходимо разделить входную строку на отдельные слова. Для этого можно использовать метод split(), который по умолчанию разделяет строку по пробелам и возвращает список слов.
  2. Создайте переменную-счётчик, которая будет отслеживать количество слов, содержащих хотя бы одну заглавную букву.
  3. Для каждого слова проверьте, есть ли в нём хотя бы одна заглавная буква. Это можно сделать, проверяя, соответствует ли хотя бы один символ в слове условию isupper(), что означает "заглавная буква".
  4. Пройдитесь по каждому слову из списка, используя цикл.
  5. Если в слове найдена заглавная буква, увеличьте счётчик на 1.
  6. После завершения цикла верните значение счётчика — это и будет количество слов с заглавными буквами.


Пример решения с кодом:

def count_uppercase_words(s: str) -> int:
	# Разделяем строку на слова
	words = s.split()
 
	# Инициализируем счётчик
	count = 0
 
	# Проверяем каждое слово на наличие заглавной буквы
	for word in words:
		if any(char.isupper() for char in word):
			count += 1
 
	# Возвращаем результат
	return count

Больше интересных новостей

Комментарии
Добавить комментарий

Пока комментариев нет