Задачка: Подсчет гласных букв

Напишите функцию count_vowels(), которая принимает на вход строку, состоящую из латинских букв, и возвращает количество гласных букв (а именно буквы A, E, I, O, U, a, e, i, o, u) в этой строке.

Напишите также тесты с использованием pytest, чтобы проверить правильность работы функции на разных входных данных.

Пишите ваши варианты в комментариях.

Подпишитесь на наш ТЕЛЕГРАМ КАНАЛ ПО АВТОМАТИЗАЦИИ ТЕСТИРОВАНИЯ
# count_vowels.py
def count_vowels(input_string):
    vowels = "AEIOUaeiou"
    return sum(1 for char in input_string if char in vowels)

# test_count_vowels.py
import pytest
from count_vowels import count_vowels

def test_regular_string():
    assert count_vowels("hello") == 2
    assert count_vowels("python") == 1

def test_empty_string():
    assert count_vowels("") == 0

def test_string_with_no_vowels():
    assert count_vowels("xyz") == 0
    assert count_vowels("bcdfghjklmnpqrstvwxyz") == 0

def test_string_with_all_vowels():
    assert count_vowels("AEIOUaeiou") == 10

def test_mixed_string():
    assert count_vowels("Hello World") == 3
    assert count_vowels("Programming is fun!") == 6

В данном примере функция count_vowels() принимает на вход строку, состоящую из латинских букв и возвращает количество гласных букв в данной строке. Подсчет гласных осуществляется посредством проверки вхождения каждого символа в строку, в которой есть только все гласные буквы. Тесты проверяют правильность работы функции для различных входных данных.

Оставьте комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *