# is_palindrome.py
#задача #автоматизация #python #pytest
def is_palindrome(number):# test_is_palindrome.py
number_str = str(number)
return number_str == number_str[::-1]
import pytest
from palindrome import is_palindrome
def test_positive_palindrome():
assert is_palindrome(121) == True
assert is_palindrome(1221) == True
def test_negative_palindrome():
assert is_palindrome(123) == False
assert is_palindrome(12321) == False
def test_single_digit():
assert is_palindrome(9) == True
def test_negative_number():
assert is_palindrome(-121) == False
def test_large_palindrome():
assert is_palindrome(12345678987654321) == True
def test_empty_input():
with pytest.raises(ValueError):
is_palindrome('')
def test_string_input():
with pytest.raises(ValueError):
is_palindrome('hello')
def test_float_input():
with pytest.raises(ValueError):
is_palindrome(12.21)
В этом примере функция is_palindrom() принимает число, преобразует его в строку и далее сравнивает эту строку с этой же строкой, но записанной в обратном порядке. Если они равны, возвращается True, в противном случае False. Тесты проверяют правильность работы функции для различных входных данных.#задача #автоматизация #python #pytest
👍9
#задача #автоматизация #python #pytest
Задачка: Поиск уникальных элементов
Напишите функцию
Напишите также тесты с использованием
Пишите ваши варианты в комментариях. Ответ будет в канале сегодня вечером.
Задачка: Поиск уникальных элементов
Напишите функцию
find_unique(), которая принимает на вход список элементов и возвращает список из уникальных элементов, то есть элементов, которые встречаются в исходном списке только один раз.Напишите также тесты с использованием
pytest, чтобы проверить правильность работы функции на разных входных данных.Пишите ваши варианты в комментариях. Ответ будет в канале сегодня вечером.
👍4
# find_unique.py
#задача #автоматизация #python #pytest
def find_unique(elements):# test_find_unique.py
return [element for element in elements if elements.count(element) == 1]
import pytestВ данном примере функция
from find_unique import find_unique
def test_unique_elements():
assert find_unique([1, 2, 3, 4, 5]) == [1, 2, 3, 4, 5]
assert find_unique(['a', 'b', 'c', 'd']) == ['a', 'b', 'c', 'd']
def test_duplicate_elements():
assert find_unique([1, 2, 2, 3, 4, 4, 5]) == [1, 3, 5]
assert find_unique(['a', 'b', 'b', 'c', 'c', 'd']) == ['a', 'd']
def test_mixed_elements():
assert find_unique([1, 'a', 2, 'b', 3, 'c']) == [1, 'a', 2, 'b', 3, 'c']
def test_empty_list():
assert find_unique([]) == []
find_unique() принимает список произвольных элементов и возвращает его, проверяя при этом чтобы элемент в списке не имел дубликатов. В противном случае этот элемент в возвращенный список не включается. Тесты проверяют правильность работы функции для различных входных данных.#задача #автоматизация #python #pytest
👍9
#задача #автоматизация #python #pytest
Задачка: Подсчет слов в предложении
Напишите функцию
Напишите также тесты с использованием
Пишите ваши варианты в комментариях. Ответ будет в канале сегодня вечером.
Задачка: Подсчет слов в предложении
Напишите функцию
count_words(), которая принимает на вход строку, представляющую предложение, и возвращает количество слов в этом предложении. Предполагается, что слова разделены пробелами.Напишите также тесты с использованием
pytest, чтобы проверить правильность работы функции на разных входных данных.Пишите ваши варианты в комментариях. Ответ будет в канале сегодня вечером.
👍3❤1
# count_words.py
#задача #автоматизация #python #pytest
def count_words(sentence):# test_count_words.py
return len(sentence.split())
import pytest
from count_words import count_words
def test_regular_sentence():
assert count_words("This is a test sentence.") == 5
assert count_words("Python programming is fun!") == 4
def test_empty_sentence():
assert count_words("") == 0
def test_sentence_with_whitespace():
assert count_words(" ") == 0
assert count_words(" Word spacing test ") == 3
def test_sentence_with_numbers():
assert count_words("There are 123 numbers.") == 4
assert count_words("This sentence has 7 words.") == 5
В данном примере функция count_words() принимает на вход строку и преобразует ее в список, разбивая по пробелам. Далее она выводим число элементов данного списка, то есть число слов во входной строке. Тесты проверяют правильность работы функции для различных входных данных.#задача #автоматизация #python #pytest
👍7
#задача #автоматизация #python #pytest
Задачка: Поиск наибольшего и наименьшего слова
Напишите функцию
Напишите также тесты с использованием
Пишите ваши варианты в комментариях. Ответ будет в канале сегодня вечером.
Задачка: Поиск наибольшего и наименьшего слова
Напишите функцию
find_extreme_words(), которая принимает на вход строку, представляющую предложение, и возвращает кортеж из наибольшего и наименьшего по длине слова в этом предложении. Предполагается, что слова разделены пробелами.Напишите также тесты с использованием
pytest, чтобы проверить правильность работы функции на разных входных данных.Пишите ваши варианты в комментариях. Ответ будет в канале сегодня вечером.
👍2❤1
# find_extreme_words.py
#задача #автоматизация #python #pytest
def find_extreme_words(sentence):# test_find_extreme_words.py
words = sentence.split()
if not words:
return None, None
return max(words, key=len), min(words, key=len)
import pytest
from find_extreme_words import find_extreme_words
def test_regular_sentence():
assert find_extreme_words("This is a test sentence.") == ("sentence.", "a")
def test_empty_sentence():
assert find_extreme_words("") == (None, None)
def test_sentence_with_whitespace():
assert find_extreme_words(" ") == (None, None)
assert find_extreme_words(" Word spacing test ") == ("spacing", "test")
def test_sentence_with_numbers():
assert find_extreme_words("There are 123 numbers.") == ("There", "123")
assert find_extreme_words("This sentence has 7 words.") == ("sentence", "7")
В данном примере функция find_extreme_words() принимает на вход строку и преобразует ее в список, разбивая по пробелам. Далее, при помощи встроенных функция max() и min(), возвращается кортеж, состоящий из максимального и минимального по длине слова. Тесты проверяют правильность работы функции для различных входных данных.#задача #автоматизация #python #pytest
👍5🤯3⚡2🔥1
#задача #автоматизация #python #pytest
Задачка: Подсчет гласных букв
Напишите функцию
Напишите также тесты с использованием
Пишите ваши варианты в комментариях. Ответ будет в канале сегодня вечером.
Задачка: Подсчет гласных букв
Напишите функцию
count_vowels(), которая принимает на вход строку, состоящую из латинских букв, и возвращает количество гласных букв (а именно буквы A, E, I, O, U, a, e, i, o, u) в этой строке.Напишите также тесты с использованием
pytest, чтобы проверить правильность работы функции на разных входных данных.Пишите ваши варианты в комментариях. Ответ будет в канале сегодня вечером.
❤5
# count_vowels.py
#задача #автоматизация #python #pytest
def count_vowels(input_string):# test_count_vowels.py
vowels = "AEIOUaeiou"
return sum(1 for char in input_string if char in vowels)
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() принимает на вход строку, состоящую из латинских букв и возвращает количество гласных букв в данной строке. Подсчет гласных осуществляется посредством проверки вхождения каждого символа в строку, в которой есть только все гласные буквы. Тесты проверяют правильность работы функции для различных входных данных.#задача #автоматизация #python #pytest
👍3
#задача #автоматизация #python #pytest
Задачка: Объединение списков
Напишите функцию
Напишите также тесты с использованием
Пишите ваши варианты в комментариях. Ответ будет в канале сегодня вечером.
Задачка: Объединение списков
Напишите функцию
combine_lists(), которая принимает на вход два списка и возвращает новый список, содержащий все элементы из обоих входных списков, сохраняя порядок их следования.Напишите также тесты с использованием
pytest, чтобы проверить правильность работы функции на разных входных данных.Пишите ваши варианты в комментариях. Ответ будет в канале сегодня вечером.
👍6❤1
# combine_lists.py
#задача #автоматизация #python #pytest
def combine_lists(list1, list2):# test_combine_lists.py
return list1 + list2
import pytest
from combine_lists import combine_lists
def test_regular_lists():
assert combine_lists([1, 2, 3], [4, 5, 6]) == [1, 2, 3, 4, 5, 6]
assert combine_lists(["apple", "banana"], ["cherry", "date"]) == ["apple", "banana", "cherry", "date"]
def test_empty_lists():
assert combine_lists([], []) == []
def test_one_empty_list():
assert combine_lists([], ["a", "b", "c"]) == ["a", "b", "c"]
assert combine_lists(["x", "y", "z"], []) == ["x", "y", "z"]
def test_mixed_elements():
assert combine_lists([1, "a", 2], ["b", 3, "c"]) == [1, "a", 2, "b", 3, "c"]
В данной задаче функция combine_lists() принимает на вход два списка и объединяет их при помощи операции сложения списков. Тесты проверяют правильность работы функции для различных входных данных.#задача #автоматизация #python #pytest
👍5❤1
#задача #автоматизация #python #pytest
Задачка: Проверка анаграмм
Напишите функцию
Напишите также тесты с использованием
Пишите ваши варианты в комментариях. Ответ будет в канале сегодня вечером.
Задачка: Проверка анаграмм
Напишите функцию
are_anagrams(), которая принимает на вход две строки и возвращает True, если они являются анаграммами, и False в противном случае. Анаграммами называются строки, которые содержат одни и те же буквы, но в разном порядке.Напишите также тесты с использованием
pytest, чтобы проверить правильность работы функции на разных входных данных.Пишите ваши варианты в комментариях. Ответ будет в канале сегодня вечером.
👍3
# are_anagrams.py
#задача #автоматизация #python #pytest
def are_anagrams(str1, str2):# test_are_anagrams.py
return sorted(str1) == sorted(str2)
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, то строки являются анаграммами. Тесты проверяют правильность работы функции для различных входных данных.#задача #автоматизация #python #pytest
#задача #автоматизация #python #pytest
Задачка: Вычисление факториала
Напишите функцию
Напишите также тесты с использованием
Пишите ваши варианты в комментариях. Ответ будет в канале сегодня вечером.
Задачка: Вычисление факториала
Напишите функцию
factorial(), которая принимает на вход неотрицательное целое число n и возвращает значение факториала этого числа. Факториал числа n обозначается как n! и равен произведению всех положительных целых чисел от 1 до n.Напишите также тесты с использованием
pytest, чтобы проверить правильность работы функции на разных входных данных.Пишите ваши варианты в комментариях. Ответ будет в канале сегодня вечером.
# factorial.py
#задача #автоматизация #python #pytest
def factorial(n):# test_factorial.py
return 1 if n == 0 else n * factorial(n - 1)
import pytest
from factorial import factorial
def test_factorial_of_zero():
assert factorial(0) == 1
def test_factorial_of_positive_numbers():
assert factorial(1) == 1
assert factorial(2) == 2
assert factorial(3) == 6
assert factorial(4) == 24
assert factorial(5) == 120
def test_factorial_of_large_number():
assert factorial(10) == 3628800
assert factorial(15) == 1307674368000
В данной задаче функция factorial() принимает на вход целое число n и рекурсивно вычисляет его факториал. Для определения базы рекурсии используется тернарный оператор. Тесты проверяют правильность работы функции для различных входных данных.#задача #автоматизация #python #pytest
👍8
#задача #автоматизация #python #pytest
Задачка: Поиск наименьшего простого делителя
Напишите функцию
Напишите также тесты с использованием
Пишите ваши варианты в комментариях. Ответ будет в канале сегодня вечером.
Задачка: Поиск наименьшего простого делителя
Напишите функцию
smallest_prime_divisor(), которая принимает на вход положительное целое число n и возвращает наименьший простой делитель этого числа (кроме 1). Если n само является простым числом, функция должна вернуть само n.Напишите также тесты с использованием
pytest, чтобы проверить правильность работы функции на разных входных данных.Пишите ваши варианты в комментариях. Ответ будет в канале сегодня вечером.
# smallest_prime_divisor.py
#задача #автоматизация #python #pytest
def smallest_prime_divisor(n):# test_smallest_prime_divisor.py
if n == 2:
return 2
for divisor in range(2, int(n ** 0.5) + 1):
if n % divisor == 0:
return divisor
return n
import pytest
from smallest_prime_divisor import smallest_prime_divisor
def test_prime_numbers():
assert smallest_prime_divisor(2) == 2
assert smallest_prime_divisor(3) == 3
assert smallest_prime_divisor(17) == 17
assert smallest_prime_divisor(19) == 19
def test_composite_numbers():
assert smallest_prime_divisor(4) == 2
assert smallest_prime_divisor(9) == 3
assert smallest_prime_divisor(25) == 5
assert smallest_prime_divisor(35) == 5
def test_large_number():
assert smallest_prime_divisor(1000000007) == 1000000007
def test_smallest_prime_divisor_of_1():
assert smallest_prime_divisor(1) == 1
В данной задаче функция smallest_prime_divisor() принимает на вход целое число и методом перебора находит минимальный делитель. Тесты проверяют правильность работы функции для различных входных данных.#задача #автоматизация #python #pytest
👍6😁1