【发布时间】:2021-12-26 07:21:34
【问题描述】:
我正在尝试绘制曲线。
代码:
f5=[]
r4=[]
for Re in range(2300,1e6,1e5):
def f_transition_turbulent(Re,ftol=0.001, MaxIter=1000):
error=10
Iter_num=0
f0=0.3164/(Re)**0.25
while error>ftol and Iter_num<MaxIter:
f4=1/(2*np.log(Re*np.sqrt(f0))-0.8)**2
error=abs(f4-f0)
Iter_num=Iter_num+1
f0=f4
return f4
f5.append(f4)
r4.append(Re)
plt.loglog(r4,f5,color='b',lw=2)
运行后我得到的错误是
范围=范围(2300,1e6,1e5)
TypeError: 'float' 对象不能被解释为整数
【问题讨论】:
-
请将您的标题简明扼要,将问题放在正文中,并修正您的代码格式。
-
range采用整数参数。您的1e6和1e5不是整数;它们是恰好取整数值的浮点数。把它拼出来:1000000等等。 -
可能对您的情况有所帮助:range() for floats
-
此代码不起作用。修复缩进。
标签: python