我写了以下Sage代码:
def Frequences(cad) :
p = {}
lcad = list(cad)
Car = sorted(list(dict.fromkeys(lcad)))
for i in lcad :
p[i] = lcad.count(i)
p1 = list(p.values())
Prob = []
for i in p1 :
Prob.append(i/len(lcad))
print(Prob)
return Car
其中“概率”是整数列表。我使用'append'函数将列表的每个元素都除以列表的长度,但是如果我除以“ len(lcad)”,它会给我0,而如果我除以整数(例如2),它将给我1 / 2。我该如何解决?
float(i)/len(lcad)
您遇到的问题是您将整数除以整数。结果是一个整数。通过将其转换为第一个浮点数,您将收到一个浮点数。