Código original:

import random
def aleat(datos):
    suma=0
    for n in datos:
        suma +=n
    return suma
datos=[]
felo= random.randint(1, 20)
print("El tamaño de la lista es: ",felo )
for n in range(felo):
    crew= random.randint(1, 100)
    datos.append(crew)
#datos= tuple(datos)
print(datos)
SumaT= aleat(datos)
print("La suma  total e s: ", SumaT)

Código refactorizado:

from random import randint
from typing import List


def aleatorios(min: int = 1, max: int = 100, size: int = 20) -> List[int]:
    return [randint(min, max) for _ in range(randint(min, size))]


def suma(numeros: List[int]) -> int:
    return sum(numeros)


if __name__ == "__main__":
    print(suma(aleatorios()))

Nota

Ambos códigos también están presentes en nuestro repositorio: