crosszip - это утилита Python, которая позволяет легко применять функцию ко всем возможным комбинациям элементов из нескольких итерационных ресурсов. Он объединяет мощность декартового продукта и функциональное программирование в единый, интуитивно понятный инструмент.
Кроме того, @pytest.mark.crosszip_parametrize - это маркер pytest , который упрощает запущенные тесты со всеми возможными комбинациями значений параметров.
| Менеджер пакетов | Команда установки |
|---|---|
| пип | pip install crosszip |
| укр | uv pip install crosszip |
Пример использования crosszip :
# Label Generation for Machine Learning
from crosszip import crosszip
def create_label ( category , subcategory , version ):
return f" { category } _ { subcategory } _v { version } "
categories = [ "cat" , "dog" ]
subcategories = [ "small" , "large" ]
versions = [ "1.0" , "2.0" ]
labels = crosszip ( create_label , categories , subcategories , versions )
print ( labels ) ['cat_small_v1.0', 'cat_small_v2.0', 'cat_large_v1.0', 'cat_large_v2.0', 'dog_small_v1.0', 'dog_small_v2.0', 'dog_large_v1.0', 'dog_large_v2.0']
Пример использования pytest marker crosszip_parametrize :
# Testing Power Function
import math
import crosszip
import pytest
@ pytest . mark . crosszip_parametrize (
"base" ,
[ 2 , 10 ],
"exponent" ,
[ - 1 , 0 , 1 ],
)
def test_power_function ( base , exponent ):
result = math . pow ( base , exponent )
assert result == base ** exponentДля получения дополнительных примеров, ознакомьтесь с документацией пакета по адресу: https://indrajeetpatil.github.io/crossip/
crosszip_parametrize для выполнения тестов со всеми возможными комбинациями значений параметров.Этот проект лицензирован по лицензии MIT.
Шрифт Hex Sticker - это Rubik , а изображение взято из значка, сделанной Freepik и доступно на Flaticon.com.