--- Python 3.8.3 ---
import typing 
from typing import Callable 
from typing import AnyStr 
from typing import Any 
from typing import Iterable
import re 
import string 
import random
def ClearString(RawString): 
    return re.sub(r' +', ' ', re.sub(rf'[{string.punctuation}]|\n', '', RawString)) 
def FillFile(fname:AnyStr, data:Iterable[Any], encoding:AnyStr): 
    with open(fname,'a',encoding=encoding) as f: 
        f.write(' '.join(map(str, data)))  
def LoadDataFromFile(fname:AnyStr, encoding:AnyStr): 
    with open(fname, 'r', encoding=encoding) as f: 
        rawData = f.read() 
    return rawData  
def StringCount(RawString: AnyStr, Selector: Callable[[AnyStr], bool], splitter: AnyStr) -> int: 
    counter = 0 
    ToAnalyse = RawString.split(splitter) 
    for item in ToAnalyse: 
        if Selector(item): counter += 1  
    return counter 
def main(): 
    #1 половина задания 
    RandomSeq = [random.randint(-99, 99) for _ in range(random.randint(0, 100))] 
    FillFile('temp.txt', RandomSeq, 'utf-8') 
    #2  половина задания
    RawText = LoadDataFromFile('temp.txt', 'utf-8') 
    CleanText = ClearString(RawText) 
     
    def IsDouble(s): 
        temp = str(abs(int(s))) 
        return len(temp) == 2 and temp[0] == temp[-1] 
         
    DoubleNums = StringCount(CleanText, IsDouble, ' ') 
    print(DoubleNums) 
     
if __name__ == "__main__": 
    main()
Объяснение:
Популярные вопросы