不能将序列乘以Float类型的nonit?Python

2024-06-25 05:36:51 发布

您现在位置:Python中文网/ 问答频道 /正文

模块1地图:

def LogisticMap(a,nIts,x):
    for n in xrange(0,nIts):
        return 4.*a*x*(1.-x)

实际程序:

^{pr2}$

程序应该从一个模块调用一个函数OneDMaps.py然后根据它的迭代来绘制它。我得到一个错误“cannotmultiplesequence by non int of type float”,我尝试使用LogisticMap(float(a)…),但是没有用。另外,我希望函数名显示在图的标题中,但是我得到“在r=0.98处,而不是在r=0.98处显示LogisticMap。在


Tags: 模块函数inpy程序forreturndef
1条回答
网友
1楼 · 发布于 2024-06-25 05:36:51

您可以这样设置list

x = [0.1]

然后通过float对其进行多重打印:

^{pr2}$

你不能那样做。也许您希望x成为array,而不是list?在

x = array([0.1])

(这将从元素上进行乘法运算)


请注意,添加列表会连接:

[0] + [1] == [0, 1]

与整数相乘与串联相同:

[0] * 3 == [0, 0, 0]

但这对花车来说毫无意义

[0] * 3.0 #raises TypeError as you've seen

(例如,如果你乘以3.5,你应该得到什么?)在

相关问题 更多 >