Задачка: Проверка анаграмм

Напишите функцию are_anagrams(), которая принимает на вход две строки и возвращает True, если они являются анаграммами, и False в противном случае. Анаграммами называются строки, которые содержат одни и те же буквы, но в разном порядке.

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

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

Подпишитесь на наш ТЕЛЕГРАМ КАНАЛ ПО АВТОМАТИЗАЦИИ ТЕСТИРОВАНИЯ
# are_anagrams.py
def are_anagrams(str1, str2):
    return sorted(str1) == sorted(str2)

# test_are_anagrams.py
import pytest
from are_anagrams import are_anagrams

def test_anagrams():
    assert are_anagrams("listen", "silent")
    assert are_anagrams("triangle", "integral")
    assert are_anagrams("debit card", "bad credit")

def test_not_anagrams():
    assert not are_anagrams("hello", "world")
    assert not are_anagrams("python", "java")
    assert not are_anagrams("abc", "def")

def test_empty_strings():
    assert are_anagrams("", "")

def test_different_lengths():
    assert not are_anagrams("abc", "abcd")
    assert not are_anagrams("abc", "ab")

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

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

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