pascalabcnet/TestSuiteAdditionalLanguages/SPythonTests/CompilationSamples/itertools.pys
Александр Земляк 17f6a9b956
Spython test suite (#3362)
* Reorganize files in TestSuite dir for multiple languages

* Add SPython samples to TestSuite

* Update TestRunner to support multiple languages

* Delete dll files accidentally pushed

* Update .gitignore

* Revert "Delete dll files accidentally pushed"

This reverts commit 62bcba2b821d58ae51ec98e9dadcf621bb0fc003.

* Update testing dir path in Testing.cs

* Improve TestRunner output

* Add random module and it's usage sample

* Reorganize gitignore files

* Move pascal tests back to TestSuite and create new TestSuiteLanguagePlugins folder for SPython

* Revert "Update testing dir path in Testing.cs"

This reverts commit 7d94eafb25292421bce8315520b4f6a0de001bbd.

* Revert crlf changes in pascal tests

* Test changes of _RebuildReleaseAndRunTestsForGitHubActions.bat

* Revert "Test changes of _RebuildReleaseAndRunTestsForGitHubActions.bat"

This reverts commit 234ceae3e3a339fbc68a6170e2bd201dab14d67d.

* Test changes in StorageLocationPicker

* Another test changes in StorageLocationPicker.cs

* Rename LanguagePlugins folder to AdditionalLanguages

* Decouple TestRunner from language names and parameters

* Revert calling TestRunner without parameters in .bat files

* Fix formatter tests nogui exception handling

* Small refactoring in Testing.cs and TestRunner fix of working directory
2025-12-21 21:11:52 +03:00

32 lines
975 B
Plaintext

# объединяет списки целых в один
def chain(*args: list[int]) -> list[int]:
sz = 0
for arg in args:
sz += len(arg)
res = [0 for i in range(sz)]
i = 0
for arg in args:
for j in range(len(arg)):
res[i] = arg[j]
i += 1
return res
# если вызвать как repeat(10, times=12)
def repeat(val: int, **kwargs: int) -> list[int]:
times = 1
if 'times' in kwargs.get_keys():
times = kwargs['times']
return [val for i in range(times)]
# если вызвать как repeat(10, 12)
def repeat(val: int, times: int) -> list[int]:
return repeat(val, times=times)
# можно просто так
# return [val for i in range(times)]
# просто функция, чтобы показать как итерироваться по kwargs
def print_int_kwargs(**kwargs: int):
for key, value in kwargs:
print(f'kwargs[{key}] = {value}')