我正在尝试做一个简单的计算(以后将在数组上完成)并得到上述错误。
不能将序列乘以'float'类型的非整数
8.99*[-(math.log(1-0.5))**(1/2.87)]
答案 0 :(得分:3)
方括号将-(math.log(1-0.5))**(1/2.87)
的结果转换为带有单个元素的列表。该错误信息是由于列表与8.99的“相乘”。 *
运算符应用于列表时,意味着多次重复列表元素并创建一个新列表。例如5 * [1]
成为[1, 1, 1, 1, 1]
。 Python抱怨您不能重复元素8.99次。
您只需删除方括号即可获得有效答案
8.99 * -(math.log(1 - 0.5)) ** (1 / 2.87)
答案 1 :(得分:1)
您正在尝试将列表(用方括号表示)乘以一个数字。尝试
#Output:
# A_1 B_1 1
# B_2 0.5
# A_2 B_1 1
# B_2 0.5
。