Subplots except Value Error: Invalid syntax

Subplots except Value Error: Invalid syntax

我知道这个问题有一些答案,但不幸的是我无法使它们中的任何一个起作用。 我有一个循环将某些时间间隔绘制为子图,但由于数据清理而删除了一些时间间隔。现在我想跳过那个时间间隔并正常继续。

我尝试这样做:

    except ValueError:
        continue

但是我收到无效语法错误。

原代码:

dimenzion = math.ceil(np.sqrt(len(lista_start)))

fig, axes = plt.subplots(nrows=dimenzion,ncols=dimenzion, figsize=(25, 21), sharex=False)
sns.despine(left= True)
fig.suptitle('Clean data', y =1.01, fontsize = 21)


date = 0
i = 0
j = 0
while date <= len(lista_end)-1:
   df_date = df_clean[(df_clean['Time'] > pd.Timestamp(lista_start.loc[date][0])) & 
                      (df_clean['Time'] < pd.Timestamp(lista_end.loc[date][0]))]
   
   df_date = df_date.reset_index(drop = True)
 
   start = datetime.datetime.strftime(lista_start.loc[date][0], '%d.%m.%y')
   end = datetime.datetime.strftime(lista_end.loc[date][0], '%d.%m.%y')
   
   df_date.plot('Time', 'Mids Ply Fines B', figsize = (25,7), ax = axes[i,j], subplots = True)
   axes[i,j].set_title('{} - {}'.format(start, end))
   axes[i,j].get_xaxis().set_visible(False)
   
    
   j = j+1
   date = date + 1
   
   if j > dimenzion - 1:
       j = 0
       i = i+1  
           
   except ValueError:
       continue
   
   plt.setp(axes, yticks=[])
   plt.tight_layout() 

在 Python 中,except 需要开始尝试 - 您需要告诉它哪个代码 'section' 可能会生成您要捕获的错误:

我不知道是哪一行生成了 ValueError - 但这应该足够了:

   try : 
      df_date = df_clean[(df_clean['Time'] > pd.Timestamp(lista_start.loc[date][0])) & 
                  (df_clean['Time'] < pd.Timestamp(lista_end.loc[date][0]))]

     df_date = df_date.reset_index(drop = True)

     start = datetime.datetime.strftime(lista_start.loc[date][0], '%d.%m.%y')
     end = datetime.datetime.strftime(lista_end.loc[date][0], '%d.%m.%y')

     df_date.plot('Time', 'Mids Ply Fines B', figsize = (25,7), ax = axes[i,j], subplots = True)
     axes[i,j].set_title('{} - {}'.format(start, end))
     axes[i,j].get_xaxis().set_visible(False)

     j = j+1
     date = date + 1

     if j > dimenzion - 1:
         j = 0
     i = i+1  
       
   except ValueError:
      continue

注意 try 和 except 之间的整个代码 'section' 是缩进的 - 这清楚地表明该部分中任何位置生成的任何 ValueError 异常都将导致创建继续。