My intuition is : use a loop like
n = no_of_l_s_required
Dummy = [‘pm.Gamma(’, ‘pm.Normal(’]
Alpha = [ Alpha_1, Alpha_2, ……Alpha_n] #expected values
Beta = [ Beta_1, Beta_2, ……Beta_n] #expected values
Mu = [ Mu_1, Mu_2, ……Mu_n] #expected values
Sd = [ Sd_1, Sd_2, ……Sd_n] #expected values
L = []
for i in range():
L.append('l[' + str(i) + ']'+ '=' + Dummy[1] + 'l[' + str(i) + '],' + 'mu =' + str(Mu[i]) + ',' + str(Sd[i]) + ')')
one can also use a conditional to change it to other distribution when required
exiting the loop
evaluating the ‘L’ . usually not recommended for a code from suspicious sources
eval(L)
###############################
Please let me know if it is what you might like to use in your code.