import random


def create_random_proteins_from_distribution(length_lst, 
                                             amino_acid_lst, 
                                             amino_acid_distribution=None):
    """Create random protein from distribution.

    https://docs.python.org/3/library/random.html#random.choices
    
    Parameters
    ----------
    length_lst : list
        List of lengths of the target proteins.
    amino_acid_lst : list
        List of amino acids to consider.
    amino_acid_distribution : list, optional
        List of amino acids distribution.
        
    Returns
    -------
    list
        List of produced protein sequences.
    """
    protein_sequence_lst = []
    for length in length_lst:
        sequence = random.choices(amino_acid_lst, 
                                  weights=amino_acid_distribution,
                                  k=length)
        protein_sequence_lst.append("".join(sequence))
    return protein_sequence_lst