ValueError:无法将字符串转换为浮点:“20210822 19:30:00+01:00”

2024-09-29 21:45:10 发布

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

我试图运行下面的代码,但我得到一个值错误,该值不在所提到的列表中。代码如下所述:

import matplotlib.pyplot as plt
import matplotlib.dates as md
import matplotlib.animation as animation
from datetime import datetime, timedelta
import dateutil



fig, axes=plt.subplots(2,1,squeeze=False)
def animate(i):
    datafileprice=open('data_close_price.txt', 'r')
    dataprice=datafileprice.readlines()
    datafileprice.close()          
    
    datafiledate=open('data_date_volume.txt', 'r')
    datadate=datafiledate.readlines()
    datafiledate.close()  
        
    seperated=""
    seperated+=datadate[0]
    seperatedlst=seperated.split("&&")
    volumelst=seperatedlst[1].split(",")
    datelst=seperatedlst[0].split(",")
    lvolume=[]
    ldate=[]

    for i in range(1,len(volumelst)-1):
        lvolume.append(float(volumelst[i]))
        
    for i in range(len(datelst)-2):
        ldate.append(datelst[i])
#---------------------------------------------------------------
    priceplot=""
    priceplot+=dataprice[0]
    plotprice=priceplot.split(",")
    
    lprice=[]
    for i in range(len(plotprice)-1):
        lprice.append(float(plotprice[i]))

    
    fig, axes=plt.subplots(2,1,squeeze=False)
    
    dates=[dateutil.parser.parse(s) for s in ldate]
    
    plt.xticks(rotation=45, ha='right')
    plt.subplots_adjust(bottom=0.30)
    
    ax=plt.gca()
    ax.set_xticks(dates)
    xfmt=md.DateFormatter('%Y-%m-%d %H:%M:%S')
    ax.xaxis.set_major_formatter(xfmt)
    axes[1][0].plot(dates, lprice)
    axes[0][0].plot(dates, lvolume)
    plt.title('Stock of InterGlobe Aviation')


ani = animation.FuncAnimation(fig, animate,interval=10000)
plt.show()

文件数据_date_卷包含日期值和卷值,这两个值随后被分开,但错误仍然出现。 错误是:

lvolume.append(float(volumelst[i]))
ValueError: could not convert string to float: '2021-08-22 19:30:00+01:00'

Tags: inimportformatplotlibas错误pltfloat

热门问题