簡體   English   中英

找到一個充滿給定項目的子列表並替換它

[英]Find a sublist full of given item and replace it

假設我有以下列表

[1, 1, 1, 1, 2, 1, 3, 2, 1, 2, 2, 1, 2, 2, 1, 1, 1, 1, 3, 1, 1, 2, 2, 1, 2, 1, 1, 3, 1, 1, 1, 1, 2, 2, 1, 2, 1, 2, 1, 2, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 2, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 2, 2, 3, 1, 1, 2, 1, 3, 2, 1, 1, 2, 1, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 2, 2, 1, 1, 2, 2, 1, 1, 1, 2, 2, 1, 1, 1, 1, 2, 1, 1, 1, 2, 1, 1, 2, 1, 3, 2, 1, 1, 1, 1, 1, 1, 2, 1, 1, 3, 1, 1, 1, 1, 1, 3, 1, 1, 3, 1, 1, 2, 1, 1, 2, 5, 4, 3, 1, 2, 2, 1, 1, 1, 1, 2, 3, 1, 1, 2, 2, 2, 2, 2, 2, 1, 2, 1, 1, 1, 1, 1, 1, 2, 3, 1, 1, 2, 1, 2, 1, 1, 2, 3, 1, 1, 1, 1, 1, 1, 1, 1, 4, 1, 1, 2, 3, 1, 1, 3, 2, 1, 1, 2, 3, 1, 2, 2, 2, 1, 2, 2, 1, 1, 1, 2, 3, 1, 1, 1, 1, 1, 1, 4, 2, 1, 1, 1, 2, 1, 2, 2, 2, 2, 1, 2, 1, 1, 3, 3, 1, 1, 2, 1, 1, 1, 2, 2, 1, 1, 2, 3, 1, 1, 1, 4, 1, 1, 1, 1, 1, 3, 1, 2, 1, 2, 3, 1, 1, 2, 2, 1, 4, 1, 2, 1, 1, 1, 3, 1, 1, 3, 2, 1, 2, 2, 1, 2, 1, 2, 3, 1, 1, 1, 3, 2, 1, 2, 1, 1, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 1, 1, 1, 2, 2, 1, 1, 2, 1, 1, 2, 1, 1, 1, 3, 1, 1, 1, 2, 1, 1, 2, 1, 1, 2, 1, 1, 3, 1, 1, 3, 1, 1, 4, 1, 2, 1, 1, 3, 3, 4, 2, 2, 5, 1, 1, 1, 1, 1, 1, 1, 1, 3, 4, 1, 1, 1, 1, 1, 1, 2, 1, 2, 1, 1, 4, 3, 1, 1, 1, 3, 1, 1, 1, 2, 1, 3, 4, 2, 2, 2, 1, 1, 2, 2, 1, 1, 1, 1, 1, 1, 2, 3, 1, 1, 2, 3, 1, 1, 2, 2, 1, 1, 2, 1, 1, 1, 1, 1, 1, 2, 1, 1, 4, 1, 1, 3, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 1, 2, 2, 1, 2, 1, 2, 2, 2, 1, 2, 2, 1, 1, 1, 5, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 2, 2, 3, 4, 2, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 3, 2, 2, 1, 3, 4, 2, 1, 1, 2, 1, 2, 1, 3, 1, 2, 1, 1, 1, 1, 1, 2, 1, 1, 1, 2, 1, 1, 1, 1, 1, 2, 1, 1, 1, 3, 2, 1, 1, 4, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 3, 1, 1, 3, 1, 1, 2, 2, 1, 1, 2, 1, 1, 1, 1, 2, 1, 1, 2, 2, 1, 1, 1, 1, 2, 1, 2, 1, 1, 2, 1, 1, 1, 1, 2, 2, 3, 1, 4, 1, 1, 2, 1, 1, 1, 1, 1, 1, 2, 1, 1, 2, 5, 1, 1, 1, 2, 1, 1, 1, 2, 1, 4, 1, 3, 3, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 2, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 2, 1, 1, 1, 2, 1, 2, 2, 1, 2, 2, 1, 1, 2, 2, 3, 1, 2, 1, 2, 2, 1, 1, 1, 1, 2, 4, 1, 1, 1, 1, 2, 2, 1, 1, 1, 2, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 2, 1, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 2, 1, 1, 2, 2, 1, 1, 1, 2, 1, 1, 2, 1, 3, 1, 2, 1, 1, 4, 2, 1, 1, 3, 3, 2, 2, 1, 1, 1, 4, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 2, 2, 1, 1, 2, 2, 1, 1, 1, 1, 1, 1, 2, 2, 1, 1, 2, 1, 1, 2, 1, 1, 3, 1, 1, 1, 2, 1, 1, 1, 2, 2, 1, 1, 2, 1, 1, 2, 1, 1, 2, 1, 1, 3, 1, 1, 2, 1, 1, 2, 2, 1, 1, 1, 1, 2, 2, 1, 1, 1, 4, 1, 3, 2, 2, 1, 1, 3, 1, 2, 2, 1, 2, 2, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 2, 2, 1, 1, 1, 1, 2, 1, 1, 2, 1, 1, 3, 1, 1, 1, 3, 1, 1, 1, 1, 2, 2, 4, 3, 4, 2, 1, 1, 1, 1, 1, 2, 2, 2, 3, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 2, 1, 1, 2, 1, 2, 4, 1, 1, 1, 1, 2, 2, 1, 1, 2, 1, 1, 1, 1, 3, 1, 1, 1, 3, 1, 1, 1, 1, 2, 1, 2, 2, 3, 4, 1, 1, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 3, 2, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 2, 1, 1, 1, 2, 3, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 2, 1, 1, 2, 1, 2, 2, 1, 1, 1, 1, 1, 2, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 2, 2, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 2, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 3, 2, 2, 1, 1, 1, 1, 1, 2, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 2, 1, 1, 1, 2, 2, 1, 1, 2, 1, 1, 2, 4, 2, 1, 3, 1, 1, 2, 1, 1, 1, 1, 1, 1, 2]

我想要做的是將所有相同的值組合成字符串。 例如

[1,1,1,1,1,1,1,2,3,1,1,1,2,2,2,2,3,3,4,5,1,1]

應該組成如下

["1x7",2,3,"1x3","2x4","3x2",4,5,"1x2"]

我認為將以下每個值相乘並檢查它們的乘積是否不同於 1、4、9、16、25 可以在某種程度上起作用,但是當涉及到更大的列表時,這還不夠。

python 是否提供了快捷方式?

您可以使用itertools.groupby收集相同值的連續運行。

from itertools import groupby
def condense(group):
    values = list(group)
    if len(values) > 1:
        return '{}x{}'.format(values[0], len(values))
    else:
        return values[0]

您可以在列表中使用此 function

>>> data = [1, 1, 1, 1, 2, 1, 3, 2, 1, 2, 2, 1, 2, 2, 1, 1, 1, 1, 3, 1, 1, 2, 2, 1, 2, 1, 1, 3, 1, 1, 1, 1, 2, 2, 1, 2, 1, 2, 1, 2, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 2, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 2, 2, 3, 1, 1, 2, 1, 3, 2, 1, 1, 2, 1, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 2, 2, 1, 1, 2, 2, 1, 1, 1, 2, 2, 1, 1, 1, 1, 2, 1, 1, 1, 2, 1, 1, 2, 1, 3, 2, 1, 1, 1, 1, 1, 1, 2, 1, 1, 3, 1, 1, 1, 1, 1, 3, 1, 1, 3, 1, 1, 2, 1, 1, 2, 5, 4, 3, 1, 2, 2, 1, 1, 1, 1, 2, 3, 1, 1, 2, 2, 2, 2, 2, 2, 1, 2, 1, 1, 1, 1, 1, 1, 2, 3, 1, 1, 2, 1, 2, 1, 1, 2, 3, 1, 1, 1, 1, 1, 1, 1, 1, 4, 1, 1, 2, 3, 1, 1, 3, 2, 1, 1, 2, 3, 1, 2, 2, 2, 1, 2, 2, 1, 1, 1, 2, 3, 1, 1, 1, 1, 1, 1, 4, 2, 1, 1, 1, 2, 1, 2, 2, 2, 2, 1, 2, 1, 1, 3, 3, 1, 1, 2, 1, 1, 1, 2, 2, 1, 1, 2, 3, 1, 1, 1, 4, 1, 1, 1, 1, 1, 3, 1, 2, 1, 2, 3, 1, 1, 2, 2, 1, 4, 1, 2, 1, 1, 1, 3, 1, 1, 3, 2, 1, 2, 2, 1, 2, 1, 2, 3, 1, 1, 1, 3, 2, 1, 2, 1, 1, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 1, 1, 1, 2, 2, 1, 1, 2, 1, 1, 2, 1, 1, 1, 3, 1, 1, 1, 2, 1, 1, 2, 1, 1, 2, 1, 1, 3, 1, 1, 3, 1, 1, 4, 1, 2, 1, 1, 3, 3, 4, 2, 2, 5, 1, 1, 1, 1, 1, 1, 1, 1, 3, 4, 1, 1, 1, 1, 1, 1, 2, 1, 2, 1, 1, 4, 3, 1, 1, 1, 3, 1, 1, 1, 2, 1, 3, 4, 2, 2, 2, 1, 1, 2, 2, 1, 1, 1, 1, 1, 1, 2, 3, 1, 1, 2, 3, 1, 1, 2, 2, 1, 1, 2, 1, 1, 1, 1, 1, 1, 2, 1, 1, 4, 1, 1, 3, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 1, 2, 2, 1, 2, 1, 2, 2, 2, 1, 2, 2, 1, 1, 1, 5, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 2, 2, 3, 4, 2, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 3, 2, 2, 1, 3, 4, 2, 1, 1, 2, 1, 2, 1, 3, 1, 2, 1, 1, 1, 1, 1, 2, 1, 1, 1, 2, 1, 1, 1, 1, 1, 2, 1, 1, 1, 3, 2, 1, 1, 4, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 3, 1, 1, 3, 1, 1, 2, 2, 1, 1, 2, 1, 1, 1, 1, 2, 1, 1, 2, 2, 1, 1, 1, 1, 2, 1, 2, 1, 1, 2, 1, 1, 1, 1, 2, 2, 3, 1, 4, 1, 1, 2, 1, 1, 1, 1, 1, 1, 2, 1, 1, 2, 5, 1, 1, 1, 2, 1, 1, 1, 2, 1, 4, 1, 3, 3, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 2, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 2, 1, 1, 1, 2, 1, 2, 2, 1, 2, 2, 1, 1, 2, 2, 3, 1, 2, 1, 2, 2, 1, 1, 1, 1, 2, 4, 1, 1, 1, 1, 2, 2, 1, 1, 1, 2, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 2, 1, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 2, 1, 1, 2, 2, 1, 1, 1, 2, 1, 1, 2, 1, 3, 1, 2, 1, 1, 4, 2, 1, 1, 3, 3, 2, 2, 1, 1, 1, 4, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 2, 2, 1, 1, 2, 2, 1, 1, 1, 1, 1, 1, 2, 2, 1, 1, 2, 1, 1, 2, 1, 1, 3, 1, 1, 1, 2, 1, 1, 1, 2, 2, 1, 1, 2, 1, 1, 2, 1, 1, 2, 1, 1, 3, 1, 1, 2, 1, 1, 2, 2, 1, 1, 1, 1, 2, 2, 1, 1, 1, 4, 1, 3, 2, 2, 1, 1, 3, 1, 2, 2, 1, 2, 2, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 2, 2, 1, 1, 1, 1, 2, 1, 1, 2, 1, 1, 3, 1, 1, 1, 3, 1, 1, 1, 1, 2, 2, 4, 3, 4, 2, 1, 1, 1, 1, 1, 2, 2, 2, 3, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 2, 1, 1, 2, 1, 2, 4, 1, 1, 1, 1, 2, 2, 1, 1, 2, 1, 1, 1, 1, 3, 1, 1, 1, 3, 1, 1, 1, 1, 2, 1, 2, 2, 3, 4, 1, 1, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 3, 2, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 2, 1, 1, 1, 2, 3, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 2, 1, 1, 2, 1, 2, 2, 1, 1, 1, 1, 1, 2, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 2, 2, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 2, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 3, 2, 2, 1, 1, 1, 1, 1, 2, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 2, 1, 1, 1, 2, 2, 1, 1, 2, 1, 1, 2, 4, 2, 1, 3, 1, 1, 2, 1, 1, 1, 1, 1, 1, 2]
>>> [condense(g) for k,g in groupby(data)]
['1x4', 2, 1, 3, 2, 1, '2x2', 1, '2x2', '1x4', 3, '1x2', '2x2', 1, 2, '1x2', 3, '1x4', '2x2', 1, 2, 1, 2, 1, 2, '1x2', 3, '1x7', 2, 1, 2, '1x8', 2, '1x4', '2x2', 3, '1x2', 2, 1, 3, 2, '1x2', 2, 1, '2x2', '1x13', 2, '1x3', '2x2', '1x2', '2x2', '1x3', '2x2', '1x4', 2, '1x3', 2, '1x2', 2, 1, 3, 2, '1x6', 2, '1x2', 3, '1x5', 3, '1x2', 3, '1x2', 2, '1x2', 2, 5, 4, 3, 1, '2x2', '1x4', 2, 3, '1x2', '2x6', 1, 2, '1x6', 2, 3, '1x2', 2, 1, 2, '1x2', 2, 3, '1x8', 4, '1x2', 2, 3, '1x2', 3, 2, '1x2', 2, 3, 1, '2x3', 1, '2x2', '1x3', 2, 3, '1x6', 4, 2, '1x3', 2, 1, '2x4', 1, 2, '1x2', '3x2', '1x2', 2, '1x3', '2x2', '1x2', 2, 3, '1x3', 4, '1x5', 3, 1, 2, 1, 2, 3, '1x2', '2x2', 1, 4, 1, 2, '1x3', 3, '1x2', 3, 2, 1, '2x2', 1, 2, 1, 2, 3, '1x3', 3, 2, 1, 2, '1x2', '2x2', '1x10', '2x2', '1x3', '2x2', '1x2', 2, '1x2', 2, '1x3', 3, '1x3', 2, '1x2', 2, '1x2', 2, '1x2', 3, '1x2', 3, '1x2', 4, 1, 2, '1x2', '3x2', 4, '2x2', 5, '1x8', 3, 4, '1x6', 2, 1, 2, '1x2', 4, 3, '1x3', 3, '1x3', 2, 1, 3, 4, '2x3', '1x2', '2x2', '1x6', 2, 3, '1x2', 2, 3, '1x2', '2x2', '1x2', 2, '1x6', 2, '1x2', 4, '1x2', 3, 4, '1x20', '2x2', 1, '2x2', 1, 2, 1, '2x3', 1, '2x2', '1x3', 5, '1x2', 3, '1x7', '2x2', 3, 4, 2, '1x5', 3, '1x4', 3, '2x2', 1, 3, 4, 2, '1x2', 2, 1, 2, 1, 3, 1, 2, '1x5', 2, '1x3', 2, '1x5', 2, '1x3', 3, 2, '1x2', 4, '1x3', 2, '1x8', 2, 1, 3, '1x2', 3, '1x2', '2x2', '1x2', 2, '1x4', 2, '1x2', '2x2', '1x4', 2, 1, 2, '1x2', 2, '1x4', '2x2', 3, 1, 4, '1x2', 2, '1x6', 2, '1x2', 2, 5, '1x3', 2, '1x3', 2, 1, 4, 1, '3x2', '1x3', 3, '1x6', 2, 1, 2, '1x15', 2, '1x4', '2x2', '1x9', 2, '1x8', 2, '1x3', 2, '1x3', 2, 1, '2x2', 1, '2x2', '1x2', '2x2', 3, 1, 2, 1, '2x2', '1x4', 2, 4, '1x4', '2x2', '1x3', 2, '1x2', 2, '1x10', 2, '1x4', 2, 1, 3, 2, '1x11', 2, '1x5', 2, '1x2', '2x2', '1x3', 2, '1x2', 2, 1, 3, 1, 2, '1x2', 4, 2, '1x2', '3x2', '2x2', '1x3', 4, 3, 2, '1x10', 2, '1x3', '2x2', '1x2', '2x2', '1x6', '2x2', '1x2', 2, '1x2', 2, '1x2', 3, '1x3', 2, '1x3', '2x2', '1x2', 2, '1x2', 2, '1x2', 2, '1x2', 3, '1x2', 2, '1x2', '2x2', '1x4', '2x2', '1x3', 4, 1, 3, '2x2', '1x2', 3, 1, '2x2', 1, '2x2', 3, '1x16', '2x2', '1x7', 3, '1x5', 2, '1x5', 2, '1x5', '2x2', '1x4', 2, '1x2', 2, '1x2', 3, '1x3', 3, '1x4', '2x2', 4, 3, 4, 2, '1x5', '2x3', 3, '1x4', 2, '1x5', 2, '1x4', 2, '1x2', 2, 1, 2, 4, '1x4', '2x2', '1x2', 2, '1x4', 3, '1x3', 3, '1x4', 2, 1, '2x2', 3, 4, '1x2', '2x2', '1x8', 3, 2, '1x2', 3, '1x33', 2, '1x2', 2, '1x3', 2, 3, '1x5', 2, '1x6', 2, '1x5', 2, '1x2', 2, 1, '2x2', '1x5', 2, '1x2', 2, '1x8', 2, '1x3', '2x2', '1x2', 2, '1x9', 3, 2, '1x5', 2, '1x7', 3, '2x2', '1x5', 2, '1x3', 2, '1x10', 3, 1, 2, '1x3', '2x2', '1x2', 2, '1x2', 2, 4, 2, 1, 3, '1x2', 2, '1x6', 2]

如果您只是希望這些數據占用更少的空間,您可以使用字典,其中項目作為鍵,它們在列表中的出現次數作為值。 我使用set刪除重復項,然后創建字典。

a = [1,1,1,1,1,1,1,2,3,1,1,1,2,2,2,2,3,3,4,5,1,1]
d = {i:a.count(i) for i in set(a)}
print(d)

output:

{1: 12, 2: 5, 3: 3, 4: 1, 5: 1}

讀取和寫入字典比那種形式的字符串要容易得多。 您也可以簡單地將字典存儲為JSON文件。

更新

因此,如果元素的順序很重要。 你可以這樣做:

a = [1,1,1,1,1,1,1,2,3,1,1,1,2,2,2,2,3,3,4,5,1,1]
b = []
count = 1
for i in range(1,len(a)):
    if a[i-1] != a[i]:
        b.append((a[i-1],count))
        count = 0
    count += 1
b.append((a[-1],count))
print(b)

output:

[(1, 7), (2, 1), (3, 1), (1, 3), (2, 4), (3, 2), (4, 1), (5, 1), (1, 2)]

它將遍歷列表並創建一個元組,其中項目作為其第一個元素,其計數作為第二個元素。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM